0

我必须使用一个预览文本输入事件,我必须将其应用于我的应用程序中的所有组合框。

例子

 private void cmbClass_PreviewTextInput(object sender, TextCompositionEventArgs e)
 {
    cmbClass.IsDropDownOpen = true;
 }

无论如何我可以使用标题(任何可能的方式),这样我就不必在我的所有组合框(总共 98 个)中输入预览文本输入?

4

1 回答 1

1

在 app.xaml 中创建样式。这将应用于您应用程序的所有组合框,但如果您希望在特定窗口的组合框中使用它,则将其写入标签中<Window.Resources>

<Application.Resources>
    <Style x:Key="key1" TargetType="ComboBox">
        <Setter Property="IsDropDownOpen" Value="True"/>
    </Style>
</Application.Resources>

或者

<Window.Resources>
   ...
</Window.Resources>

或者

您可以为所有组合框分配一个公共事件。将此代码写入您的 .cs 文件并选择所有组合框并将此事件分配给 PreviewTextInput 事件。

private void cmboxes_PreviewTextInput(object sender, TextCompositionEventArgs e)
{
    ((ComboBox)sender).IsDropDownOpen = true;
}
于 2012-04-29T05:36:39.407 回答