我刚刚找到DockPanel Suite并且正在学习使用它。
我下载了v2.9并在VS2013中使用它与C#。我创建了一个简单的Windows窗体MDI应用程序。它有一种类型的子表单,它是一个简单的表单,其中只有一个富文本框控件。我加载了一些这些文件。我在文档的选项卡中添加了一个图标,以指示是否已保存富文本框文本。
我通过使用text_Changed事件在用户输入富文本框时随时更改选项卡图标:
private void txtCode_TextChanged(object sender, EventArgs e)
{
//The text has changed, set the warning icon.
this.Icon = MyApp.Properties.Resources.Warning;
}
我遇到的问题是全速运行时图标不会更新。当我单步执行上述事件时,它会更新。当我在表单的Load事件中加载文件时,它也会正常更新;
private void frmCode_Load(object sender, EventArgs e)
{
//Get the full file path.
string sFile = Path.Combine(cCoCoIDE.CodeBaseRootFolder, Path.GetFileNameWithoutExtension(cCoCoIDE.CodeBaseFile), this.Text);
//Load the source file into the code window.
//A few validations.
//Make sure the file exists.
if (File.Exists(sFile))
{
//File is there. Is it empty? Load only if not empty.
if (new FileInfo(sFile).Length > 0)
{
txtCode.LoadFile(sFile);
//I had to add the following because the text changed
//event fires when I load the file and I need to start
//off with the green checkmark icon.
this.Icon = CoCoIDE.Properties.Resources.GreenChk;
}
}
}
我在更改图标后(在文本更改事件中)尝试了以下内容:
this.ShowIcon = true;
this.Refresh();
this.Update();
注意:我一次尝试过这些。以上只是一系列方法。
任何人都可以帮我吗?谢谢! SgarciaV