C# RoutedEvents组合框未启动
你好,能找个人帮忙吗。我有两个用户控件。一个带有文本框,另一个带有组合框。一旦修改组合框和文本框,主窗口将执行计算例程。 文本框版本有效,组合框则无效。我能看到的唯一区别是 Textbox使用TextChangedEventArgs 鉴于 Combobox使用System.EventArgs 有什么想法吗? 谢谢C# RoutedEvents组合框未启动,c#,wpf,routed-events,C#,Wpf,Routed Events,你好,能找个人帮忙吗。我有两个用户控件。一个带有文本框,另一个带有组合框。一旦修改组合框和文本框,主窗口将执行计算例程。 文本框版本有效,组合框则无效。我能看到的唯一区别是 Textbox使用TextChangedEventArgs 鉴于 Combobox使用System.EventArgs 有什么想法吗? 谢谢 尝试查看组合框()的事件SelectionChanged XAML: 组合在一个UserControl中,因此需要从(多个)用户控件到主窗体之间建立某种连接。我似乎有一些东西在工作,在
尝试查看组合框()的事件SelectionChanged XAML:
组合在一个UserControl中,因此需要从(多个)用户控件到主窗体之间建立某种连接。我似乎有一些东西在工作,在UserControl和Main窗体上都添加了这些。ucCombo.AddHandler(ComboBox.KeyUpEvent,新RoutedEventHandler(ComboHandler));ucCombo.AddHandler(ComboBox.SelectionChangedEvent,new RoutedEventHandler(ComboHandler));
// UserControl - with TextBox
public event RoutedEventHandler ucTextChanged;
private void OnTextChanged(object sender, RoutedEventArgs e)
{
if (ucTextChanged != null)
{
ucTextChanged(this, new RoutedEventArgs());
}
}
private void txtValue_TextChanged(object sender, TextChangedEventArgs e)
{
OnTextChanged(sender, e);
}
// UserControl - ComboBox
public event RoutedEventHandler ucComboChanged;
private void OnComboChanged(object sender, RoutedEventArgs e)
{
if (ucComboChanged != null)
{
ucComboChanged(this, new RoutedEventArgs());
}
}
private void ucCombo_DropDownClosed(object sender, System.EventArgs e)
{
OnComboChanged(sender, e);
}
<ComboBox SelectionChanged="ucCombo_SelectionChanged"></ComboBox>
private void ucCombo_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
// your code here...
OnComboChanged(sender, e);
}