我正在使用免费的Krypton工具包在C#中执行此应用程序但是Krypton Navigator是一种付费产品,这对我来说相当昂贵,而且这个应用程序正在我的空闲时间开发,它将免费向公众开放.
所以,我正在寻找一个免费的控件来更好地集成到我的Krypton应用程序中,因为默认的一个不太合适,它将根据操作系统版本而有所不同...
有什么建议?
PS:我知道我可以拥有它,但我不想做那种工作......我更喜欢已经完成的东西,如果它是免费的.
编辑:
我刚刚找到了我想要的东西:http:
//www.angelonline.net/CodeSamples/Lib_3.5.0.zip
当我在我的表单中添加氪项时,它们会显示在其他项目的顶部,我怎么能这样做以便我可以在其他项目后面添加一些内容?
我正在调试一个大的Winforms应用程序,它有一些内存泄漏问题.我使用.NET内存分析器,到目前为止,我已经能够找到一些泄漏并解决它们.但是现在我遇到了一个问题,我不确定是一个问题,如果它是一个我不知道如何解决它.
运行我的应用程序1分钟后(考虑到普通用户可以使用它几个小时不是很多),.NET内存分析器向我展示了Krypton Toolkit中大约100-200个不同控件的实例,如果我这个数字正在增加继续前进(它们永远不会被垃圾收集,因为看起来它们仍被引用到某处).现在,如果我检查这些实例的根路径,它们看起来像:

我不知道在我的代码中查看哪些内容可以在不再需要这些实例时正确地取消引用,因为我不知道还在引用控件的内容.我知道KryptonButtonEx创建的地方,据我所知,ViewManager是由这个按钮创建的,但我仍然看不到我能做些什么.对于那些感兴趣的人,创建按钮的代码是这样的:
KryptonButton newControlButton = new KryptonButton();
newControlButton.Tag = mtActivityControl;
newControlButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
newControlButton.AutoSize = true;
newControlButton.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowOnly;
newControlButton.ButtonStyle = ComponentFactory.Krypton.Toolkit.ButtonStyle.ListItem;
newControlButton.Location = new System.Drawing.Point(3, 3);
newControlButton.Name = string.Format("controlButton{0}", mtActivityControl.SymbolicName);
newControlButton.Size = new System.Drawing.Size(96, 23);
newControlButton.StateCommon.Content.Image.ImageH = ComponentFactory.Krypton.Toolkit.PaletteRelativeAlign.Near;
newControlButton.StateCommon.Content.ShortText.TextH = ComponentFactory.Krypton.Toolkit.PaletteRelativeAlign.Near;
newControlButton.TabIndex = 5;
StringBuilder buttonText = new StringBuilder();
buttonText.Append(Path.GetFileName(mtActivityControl.ControlName));
/*if (mtActivityControl.SymbolicName.Length != 0)
{
buttonText.Append(" (");
buttonText.Append(mtActivityControl.SymbolicName);
buttonText.Append(")");
}*/
newControlButton.Text = buttonText.ToString();
newControlButton.Values.ExtraText = "";
newControlButton.Values.Image = null;
newControlButton.Values.ImageStates.ImageCheckedNormal = null;
newControlButton.Values.ImageStates.ImageCheckedPressed = null; …Run Code Online (Sandbox Code Playgroud)