使用C#开发Windows应用:70-511考试重点解析

需积分: 10 3 下载量 73 浏览量 更新于2024-07-29 收藏 300KB PDF 举报
"这是关于Microsoft认证考试70-511的复习资料,涵盖了Windows应用程序开发使用Microsoft .NET Framework 4的相关知识。这份PDF文件可能是由CertifyMe提供的,包含了一个模拟考试的问题集,旨在帮助考生准备考试。考试的通过分数为700分,时长90分钟,版本号为9.0。" 在提供的部分试题中,我们看到了一个与Windows Presentation Foundation (WPF)应用相关的编程问题。问题涉及到如何在用户输入文本时检查两个特定的文本框(TxtBoxA和TxtBoxB),确保它们不包含特定关键词集合中的任何字符串。 解答: 选项A中的代码片段如下: ```csharp private void StackPanel_PreviewTextInput(object sender, TextCompositionEventArgs e) { FrameworkElement feSource = sender as FrameworkElement; if (feSource.Name == "TxtBoxA" || feSource.Name == "TxtBoxB") { foreach (string keyword in Keywords) { if (e.Text.Contains(keyword)) { e.Handled = false; return; } } } e.Handled = true; } ``` 这段代码首先获取触发事件的元素,并检查它是否是目标文本框(TxtBoxA或TxtBoxB)。如果是,代码会遍历关键词列表。如果用户输入的文本`e.Text`包含了关键词,事件会被标记为未处理(`e.Handled = false;`),然后立即返回,阻止输入。如果遍历完整个关键词列表都没有匹配项,事件将被默认处理,即`e.Handled = true;`,这通常意味着输入将被接受。 选项B的代码片段没有完全给出,但看起来像是类似的逻辑,只是缺少了对`e.Handled`的正确设置。 这个知识点涉及WPF中的事件处理,特别是`PreviewTextInput`事件,这是一个在文本输入到控件之前触发的事件。通过处理这个事件,开发者可以拦截并修改用户输入。此外,还展示了如何使用`TextCompositionEventArgs`对象来访问和检查用户的输入,以及如何使用`foreach`循环遍历和比较数据集合。 在实际的.NET Framework 4的WPF开发中,这样的代码可能用于实现输入验证,例如防止用户输入敏感或非法字符,或者根据业务规则限制输入内容。这种验证是提高用户体验和数据质量的关键组成部分。