熟悉DevComponents.AdvTree.Cell的请进。 DevComponents.AdvTree.Cell单元格设置为可编辑状态,并且编辑框属性为数字类型DevComponents.AdvTree.eCellEditorType.NumericInteger,我的问题是当双击时这个数字类型控件进行输入时,这个控件长度显示太小,只可以显示1位数。请问大侠怎么将输入框变长? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 EditType设置成:eCellEditorType.NumericInteger之后,当编辑Cell时自动会出现一个IntegerInput Control,这个Control的Dock属性是Fill,你只要把列宽拉的大一点,IntegerInput自动会按列宽充满,就不存在长度小的问题. 我Cell节点代码如下,外面的绿色边框很长,但是点击输入时里面的数字控件就一位大小,列宽再大也不行,不知为何?DevComponents.AdvTree.Cell UserNameLabel = new DevComponents.AdvTree.Cell();UserNameLabel.Text = "预置点";UserNameLabel.StyleNormal = new DevComponents.DotNetBar.ElementStyle();UserNameLabel.StyleNormal.Border = DevComponents.DotNetBar.eStyleBorderType.Solid;UserNameLabel.Editable = false;DvsCameraNode.Cells.Add(UserNameLabel);DevComponents.AdvTree.Cell Preset = new DevComponents.AdvTree.Cell();Preset.StyleNormal = new DevComponents.DotNetBar.ElementStyle();Preset.StyleNormal.Border = DevComponents.DotNetBar.eStyleBorderType.Solid;Preset.StyleNormal.BorderWidth = 2;Preset.StyleNormal.BorderColor = Color.Green;Preset.StyleNormal.MaximumWidth = 200;Preset.StyleNormal.PaddingLeft = 0;Preset.StyleNormal.PaddingRight = 100;Preset.StyleNormal.PaddingBottom = 5;Preset.StyleNormal.PaddingTop = 0;Preset.Editable = true;Preset.EditorType = DevComponents.AdvTree.eCellEditorType.NumericInteger;Preset.StyleNormal.WordWrap = false;Preset.Text = "1";DvNode.Cells.Add(Preset); 处理一下PrepareCellEditorControl事件 private void advTree1_PrepareCellEditorControl(object sender, PrepareCellEditorEventArgs e) { IntegerInput ii = e.Editor as IntegerInput; if(ii != null) { ii.DisplayFormat = "d5"; ii.FreeTextEntryMode = true; } } bloodish你好,你那个响应函数在EditorType为eCellEditorType.Custom才能进入,如果eCellEditorType.NumericInteger不会进入。谢谢你的关注。 你的判断是不对的,任何情况都能触发这个事件.另外如果实在无法满足你的要求,设置Cell的HostControl为一个IntegerInput步骤为先在UI上添加一个IntegerInput,设置其相关属性,再在Cell Collection Editor中选择Cell的HostControl为你刚添加的IntegerInput.实际项目中对DotNetBar还是比较熟悉的,用的也比较多,希望能给你一点帮助. 谢谢bloodish,用HostControl方法简单有效。 【菜鸟】问一下,vista界面控件的风格是不是不能用API写出来? 组件窗口最大化的问题。 CrystalReport怎么连到窗体上的值,并打印? 各位大侠帮帮菜鸟!!!~ 急急急 treeview 的问题 灌者有分,困扰我2天的难题 关于引用类型的参数传递??? 高分求助啊 C# WebBrowser组件 本窗口打开 sql server企业管理器 设计表时,列的公式如何显示% 趣味字符串题! 多个客户端同时发送请求同一个webservic执行 增删改数据库。 学C# socket编程 要看什么书好
DevComponents.AdvTree.Cell UserNameLabel = new DevComponents.AdvTree.Cell();
UserNameLabel.Text = "预置点";
UserNameLabel.StyleNormal = new DevComponents.DotNetBar.ElementStyle();
UserNameLabel.StyleNormal.Border = DevComponents.DotNetBar.eStyleBorderType.Solid;
UserNameLabel.Editable = false;
DvsCameraNode.Cells.Add(UserNameLabel);
DevComponents.AdvTree.Cell Preset = new DevComponents.AdvTree.Cell();
Preset.StyleNormal = new DevComponents.DotNetBar.ElementStyle();
Preset.StyleNormal.Border = DevComponents.DotNetBar.eStyleBorderType.Solid;
Preset.StyleNormal.BorderWidth = 2;
Preset.StyleNormal.BorderColor = Color.Green;
Preset.StyleNormal.MaximumWidth = 200;Preset.StyleNormal.PaddingLeft = 0;
Preset.StyleNormal.PaddingRight = 100;
Preset.StyleNormal.PaddingBottom = 5;
Preset.StyleNormal.PaddingTop = 0;
Preset.Editable = true;
Preset.EditorType = DevComponents.AdvTree.eCellEditorType.NumericInteger;
Preset.StyleNormal.WordWrap = false;
Preset.Text = "1";
DvNode.Cells.Add(Preset);
private void advTree1_PrepareCellEditorControl(object sender, PrepareCellEditorEventArgs e)
{
IntegerInput ii = e.Editor as IntegerInput;
if(ii != null)
{
ii.DisplayFormat = "d5";
ii.FreeTextEntryMode = true;
}
}
你那个响应函数在EditorType为eCellEditorType.Custom才能进入,如果eCellEditorType.NumericInteger不会进入。
谢谢你的关注。
你的判断是不对的,任何情况都能触发这个事件.另外如果实在无法满足你的要求,设置Cell的HostControl为一个IntegerInput
步骤为先在UI上添加一个IntegerInput,设置其相关属性,再在Cell Collection Editor中
选择Cell的HostControl为你刚添加的IntegerInput.实际项目中对DotNetBar还是比较熟悉的,用的也比较多,希望能给你一点帮助.