最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
c# property属性和改变编辑多行文本
时间:2022-06-25 05:01:53 编辑:袖梨 来源:一聚教程网
c# property属性和改变编辑多行文本
一个常见的属性的使用。其中name 属性没有定义私有字段,而age定义了已有字段。
public sealed class employee {
// this property is an automatically implemented property
public string name { get; set; }
private int32 m_age;
public int32 age {
get { return(m_age); }
set {
if (value < 0) // the 'value' keyword always identifies the new value.
throw new argumentoutofrangeexception("value", value.tostring(),
"the value must be greater than or equal to 0");
m_age = value;
}
}
}
改变 propertygrid 控件的编辑风格(2)——编辑多行文本
效果:
适用场合:
1、 编辑多行文本;
2、 编辑长文本。
步骤一:定义从uitypeeditor 派生的类,示例如下:
using system;
using system.windows.forms;
using system.drawing.design;
using system.windows.forms.design;
namespace blog.111com.net.zhangyuk
{
///
/// propertygridmutitext 的摘要说明。
///
public class propertygridrichtext : uitypeeditor
{
public override uitypeeditoreditstyle geteditstyle(system.componentmodel.itypedescriptorcontext context)
{
return uitypeeditoreditstyle.dropdown;
}
public override object editvalue(system.componentmodel.itypedescriptorcontext context, system.iserviceprovider provider, object value)
{
try
{
iwindowsformseditorservice edsvc =
(iwindowsformseditorservice)provider.getservice(typeof(iwindowsformseditorservice));
if (edsvc != null)
{
if (value is string)
{
richtextbox box = new richtextbox();
box.text = value as string;
edsvc.dropdowncontrol(box);
return box.text;
}
}
}
catch (exception ex)
{
system.console.writeline("propertygridrichtext error : " + ex.message);
return value;
}
return value;
}
}
}
步骤二:编辑属性类,指定编辑属性。示例如下:
namespace blog.111com.net.zhangyuk
{
public class someproperties
{
private string _finished_time = "";
// ……
// 多行文本编辑框
string _mutilinesample = "";
[description("多行文本编辑框"), category("属性"), editorattribute(typeof(propertygridrichtext),
typeof(system.drawing.design.uitypeeditor))]
public string 多行文本
{
get { return _mutilinesample; }
set { _mutilinesample = value; }
}
//……
}
}
步骤三:设置propertygrid的属性对象。示例如下:
private void form1_load(object sender, system.eventargs e)
{
this.propertygrid1.selectedobject = new someproperties();
}
相关文章
- 龙族卡塞尔之门七原罪傲慢技能是什么 七原罪傲慢技能介绍 09-16
- 三国望神州巨野夺城战怎么打 巨野夺城战打法教学 09-16
- 超级机器人大战Y他们与她的选择怎么过 多结局分支关卡攻略 09-16
- 地下城堡4骑士与破碎编年史射手如何选择 09-16
- 为了吾王热气球怎么降落 09-16
- 逆战未来武器流派有哪些 09-16