C# TabPage:文本更改时图像将被删除
我目前正在尝试使用ImageList中的图像更改特定选项卡页的文本。但每次我试图更改选项卡页面的文本时,图像都会被删除。 以下是外观: 下面是我如何更改文本的:C# TabPage:文本更改时图像将被删除,c#,winforms,tabcontrol,C#,Winforms,Tabcontrol,我目前正在尝试使用ImageList中的图像更改特定选项卡页的文本。但每次我试图更改选项卡页面的文本时,图像都会被删除。 以下是外观: 下面是我如何更改文本的: private void Log_UnreadChanged(int unread) { this.InvokeEx(f => { if (unread > 0) { f.logTab.Text = "
private void Log_UnreadChanged(int unread)
{
this.InvokeEx(f =>
{
if (unread > 0)
{
f.logTab.Text = "Log (" + unread + ")";
}
else
{
f.logTab.Text = "Log";
}
});
}
InvokeEx方法来自。问题是,我使用的是
ImageKey
而不是ImageIndex
属性。每次文本更改后,我都设置了ImageIndex
。问题是,我使用的是ImageKey
而不是ImageIndex
属性。每次文本更改后,我都会设置ImageIndex
。您能否共享用文本和图像初始化选项卡标题的代码?@KernelMode这是在设计器代码中完成的,我应该分享它吗?不。你能在你的项目中搜索logTab.ImageIndex
的用法并检查你是否看到任何意外的赋值吗?@KernelMode我使用的是ImageKey
,除了这个用法和设计器代码中的用法之外,没有其他用法。所以使用索引(int
)而不是键(string
)并告诉我发生了什么。我的意思是删除代码中的所有…ImageKey=
。我怀疑您的键有误(string
)。你能用文本和图像共享初始化选项卡标题的代码吗?@KernelMode这是在设计器代码中完成的,我应该共享吗?不。你能在项目中搜索logTab.ImageIndex
的用法并检查是否看到任何意外的分配吗?@KernelMode我使用的是ImageKey
,没有其他u除了这一个和设计器代码中的一个之外,还有一些圣人。因此,请使用索引(int
)而不是键(string
),然后告诉我发生了什么。我的意思是删除代码中的所有…ImageKey=
。我怀疑您的键是错误的(string
)。