我正在研究wpf。我的要求是根据用户确认更改选项卡,这意味着每次用户更改选项卡时,消息框都会打开,并与用户确认是否要更改选项卡。
但我的问题是,当我第一次没有按下它工作正常时。但是在第二次之后它会要求用户确认两次
任何人都可以帮我解决这个问题吗?
private void tabcontrol_SelectionChanged(object sender,SelectionChangedEventArgs e)
{
try
{
if (handleSelection && e.OriginalSource == tbUserProfileMainControl)
{
//Ask user for change
if (isUserAllowedToChanged)
{
int currentIndex = (tabcontrol.SelectedIndex);
GeneralDeclaration.currentSelectedTabIndex = currentIndex;
LoadUserControl(GeneralDeclaration.currentSelectedTabIndex);
}
else
{
//e.Handled = true;
handleSelection = false;
tbUserProfileMainControl.SelectedIndex = Math.Abs(tbUserProfileMainControl.SelectedIndex - 1);
}
}
handleSelection = true;
}
catch (Exception ex)
{
//
}
}
答案 0 :(得分:0)
听起来您在点击事件期间添加处理程序。这会导致您的后续点击再次执行操作(第3次点击3次,第4次点击4次等)。
检查如何将事件绑定到处理程序并检查您在何处定义处理程序本身。你做了两次只能做一次的事情。
根据你的发现,这是我的估计,没有代码,我只是在黑暗中进行疯狂的刺伤。