【发布时间】:2012-04-04 05:28:44
【问题描述】:
我正在处理 WinForms TabControl 的取消选择事件中的选项卡更改。但是,在某些情况下,我会删除我在切换到之前单击的选项卡。
场景
我有标签 1 和标签 2 目前我在标签 1 我点击标签2 选项卡 1 取消选择事件从选项卡集合中删除选项卡 2 OnPaint 崩溃,因为它试图转到不再存在的选项卡。 (ArgumentOutOfRangeException)。它在遇到 Selecting Event 之前崩溃。
我不想在取消选择时查看选项卡计数是否发生变化,因为我只想在我将要使用的选项卡不再存在时取消。
任何帮助将不胜感激。
private void TabControl_Deselecting( object sender, TabControlCancelEventArgs ) {
DoSomeWork();
}
假设 DoSomeWork 删除了我单击的选项卡。我怎样才能知道它是否确实删除了我打算去的标签?
【问题讨论】:
-
您能否再澄清一下这个问题以及@fahed 的预期结果。无法理解您想要的内容。
-
您需要重新考虑您的用户界面。这听起来太混乱且难以使用。
-
Tab 删除深度为 3 或 4 个函数,哇,这有点过头了。您是
binding控制业务对象并将所有逻辑放入业务对象中吗?这个 GUI 的功能听起来很不直观。
标签: c# winforms tabcontrol