日期:2014-05-17  浏览次数:20807 次

C#动态添加第三方控件
我想动态生成一个按钮 但是如下代码实现不了



ButtonX bt = new ButtonX();
bt.Visible = true;
this.Controls.Add(bt);

我这个控件叫ButtonX 没写错
------最佳解决方案--------------------
引用:
引用:我想动态生成一个按钮 但是如下代码实现不了


C# code?1234ButtonX bt = new ButtonX();bt.Visible = true;this.Controls.Add(bt);
我这个控件叫ButtonX 没写错
这个visible我写了  location也试过了  不行。。。
       ……


你这个this是form? form上面没有上面panel或者其他可能遮挡的容器?
检查一下。
然后断点看下你new的button。监测看下实时值。对比下其他的button有什么不同。
无非就是可见。位置。父容器,大小,
------其他解决方案--------------------
多定义几个属性吧 比如宽度高度之类的
------其他解决方案--------------------
冷不丁的 new 位置是不确定的  你得设置位置和大小 location 和  size
------其他解决方案--------------------
代码没错,怎么个实现不了
------其他解决方案--------------------
ButtonX类是继承自Button吗?
------其他解决方案--------------------
引用:
代码没错,怎么个实现不了

就是不出来啊   看起来跟 visible属性false一样
------其他解决方案--------------------
引用:
ButtonX类是继承自Button吗?

这个  我这方面有点无知。。。。我的这个控件是一个叫dotnatbar的控件集合里的
------其他解决方案--------------------
设计器界面能看到这个按钮吗
------其他解决方案--------------------
引用:
设计器界面能看到这个按钮吗

动态添加 所以设计器页面只是一个form 其他啥都没有 
这就是那个控件 就是不显示啊  
------其他解决方案--------------------
你new出来的visible都是false。得改。
然后location也改下。默认是0,0.
------其他解决方案--------------------
引用:
我想动态生成一个按钮 但是如下代码实现不了


C# code?1234ButtonX bt = new ButtonX();bt.Visible = true;this.Controls.Add(bt);
我这个控件叫ButtonX 没写错

这个visible我写了  location也试过了  不行。。。
------其他解决方案--------------------
引用:
我想动态生成一个按钮 但是如下代码实现不了


C# code?1234ButtonX bt = new ButtonX();bt.Visible = true;this.Controls.Add(bt);
我这个控件叫ButtonX 没写错

这个visible我写了  location也试过了  不行。。。
会不会和引用有关呢?
------其他解决方案--------------------
问题解决了 这个果然是有属性得设置啊    这个控件必须的设置size属性才能显示在窗口上   谢谢大家  撒分了