我有一個下拉列表和單選按鈕。如果用戶從下拉菜單中選擇了某項內容,我希望清除單選按鈕。如果選擇了單選按鈕,我想要清除選擇下拉菜單。不幸的是,這會產生相互抵消的事件。我嘗試使用如下所示的發件人來確定值是由代碼還是由用戶更改,但這不起作用。如何讓這些事件僅在用戶是行動的來源時才起作用?確定事件源
private void rbBlank_Checked(object sender, RoutedEventArgs e)
{
// Verify source of event
if (sender is RadioButton)
{
// Display
comboBoxTitles.SelectedIndex = -1;
}
}
private void comboBoxTitles_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
{
// Verify source of event
if (sender is ComboBox)
{
// Display
rbBlank.IsChecked = false;
}
}
我認爲你需要'e.Source'而不是發件人。 –
你爲什麼不使用DP?創建屬性,只有該屬性的分配將改變一個控件或其他的狀態。 – Tigran