继续用户控件---锁定高度问题

gwf25sz 2011-12-14 05:22:23
希望可以像TextBox 一样:
Multiline 设为false时 高度不能调只能调宽度(没有调节的点 【就是小圆圈】)

现在自己做的有8个调节点。。。。不知道怎么去限制掉。


有高手知道不?
...全文
50 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
woailihuan2 2011-12-15
  • 打赏
  • 举报
回复
学习!谢谢二楼!
csdn_aspnet 2011-12-15
  • 打赏
  • 举报
回复
根据xhsr(散人)和Firestone2003(笨笨小猪) 的提示,做法如下:
设计时限制改变大小
(Firestone2003(笨笨小猪)说得是web控件的限制大小的方法,我没有用过)
如果是windows控件需要重载ControlDesigner的SelectionRules属性
public override SelectionRules SelectionRules
{
get
{
SelectionRules rules1 = base.SelectionRules;
rules1 = ((SelectionRules) ((int) rules1)) & ((SelectionRules) (-4));
return rules1;
}
}
上面是TextBox限制改变高度的实现

但是如果你用代码还是可以改变他的高度的,所以如果做到真正的限制
就要象xhsr(散人)所说改写 Control.SetBoundsCore
protected override void SetBoundsCore(int x, int y, int width, int height, BoundsSpecified specified)
{
height = 50;//这里为了简单直接定义高度为50
//你可以检查属性等然后计算得出合适的高度
base.SetBoundsCore (x, y, width, height, specified);
}

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧