0

我的应用程序中有一个TabControl。基于选中的复选框,我TabItem在运行时创建了一个。如果未选中复选框,则TabItem必须将其删除。现在,我的问题是,我只需要删除那个TabItem.

我正在实施这个,并TabItem再次创建。但正如我所说,当检查或取消选中复选框时,我会丢失所有选项卡的所有信息:

tc_Descuento.TabPages.Clear();

我正在阅读一些帖子并尝试了这个:

TabPage tb = new TabPage();
tb = tc_Descuento.Controls.Find("Cuota-" + Convert.ToString(cuota.num_cuota));
tc_Descuento.TabPages.Remove(tb);

TabItem 的名称是:"Cuota-" + Convert.ToString(cuota.num_cuota)

我尝试的是创建一个TabItem,然后在TabControl其名称中找到它。然后将其TabPagesTabControl.

我收到编译错误。当然,这是因为我无法将 Control 项转换为 TabPage。但是,我怎样才能将该 TabItem 控件作为 TabItem 而不是控件?

谢谢..

编辑:

tb = Convert.ChangeType(tc_Descuento.Controls.Find("Cuota-" + Convert.ToString(cuota.num_cuota), false).First(), TabItem);

我现在试过了,我需要一种将控件转换为 TabItem 的方法。但这也不是编译:/

4

1 回答 1

0

已经找到我的答案了!

这是这样做的方法:

tb = (TabPage)(tc_Descuento.Controls.Find("Cuota-" + Convert.ToString(cuota.num_cuota), false).First());

您必须在开始时转换类型。

希望这可以帮助别人!

于 2013-01-10T15:26:22.263 回答