C#中,不管有没有ReadOnly属性,我都可以控制控件只读,这个我应该怎么做? 80
我试过消息,消息没有WM_READONLY=0xa1SendMessage(Ctl.Handle,WM_READONLY,IntPtr.Zero,IntPtr.Zero)...
我试过消息,消息没有WM_READONLY=0xa1 SendMessage(Ctl.Handle, WM_READONLY, IntPtr.Zero, IntPtr.Zero);
,我也试过强制转换控件,
private void SetCtlValue(Control Ctl, bool Ro, Color Cor)
{
ControlReadonly crCtl = Ctl as ControlReadonly;
crCtl.ReadOnly = Ro;
crCtl.BackColor = Cor;
}也没通过
public class ControlReadonly : Control //我自己加了个只读属性
{
[DefaultValue(false)]
[RefreshProperties(RefreshProperties.Repaint)]
public bool ReadOnly { get; set; }
}
大家是否有更多的办法
不能使用Enabled,如果有文字长的,控件里就看到到后面的文字了 展开
,我也试过强制转换控件,
private void SetCtlValue(Control Ctl, bool Ro, Color Cor)
{
ControlReadonly crCtl = Ctl as ControlReadonly;
crCtl.ReadOnly = Ro;
crCtl.BackColor = Cor;
}也没通过
public class ControlReadonly : Control //我自己加了个只读属性
{
[DefaultValue(false)]
[RefreshProperties(RefreshProperties.Repaint)]
public bool ReadOnly { get; set; }
}
大家是否有更多的办法
不能使用Enabled,如果有文字长的,控件里就看到到后面的文字了 展开
展开全部
最简便的方法是对Enable属性修改,改成false.
-------
你的是个什么控件?用户自定义的控件?
-------
你的是个什么控件?用户自定义的控件?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你是想那个控件显示什么信息呀,如果只是文字信息,可以用Lable控件
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
每个控件的ReadOnly实现可能不同,只能一个个的重载
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public bool ReadOnly { get; set; }
你这个添加的属性是新的属性吧,没意义
你这个添加的属性是新的属性吧,没意义
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询