自定义一个组件,然后有个属性里的数据是从数据库读出的而且要做成下拉框如 text文本框中的Visable的true和false似的。不能用枚举。
解决方案 »
- asp.net <%#Eval("")%>前面的<被编译成”<;“了怎么办
- 请问,StreamWriter使用Using语句
- 哪位有提取GOOGLE搜索结果中的结果数的代码
- 一个字符串截取数组的问题,急~~~~
- 关于OleDbConnection.GetOleDbSchemaTable方法取Sheet名
- 网页上的验证码想让它显示在form窗体上pictruebox上面!
- !急!在线等待:在WinForm中如何提取DataGrid 选中行中的数据
- 怎样实现文字动画?像ppt那样?
- 我有个WPF 问题(不知道是什么原因)
- 小弟目前在做pos系统,关于顾显有没有通用代码,请做过的高手帮忙贴上,谢谢!!
- c#读取dxf文件的问题
- C#数据库更新问题
1.定义一个usercontrol,里面放一个listbox控件,在用户控件里面代码如下:
private object[] mParam = {}; /// <summary>
/// 添加注释
/// </summary>
public object[] Param
{ get
{
this.listBox1.Items.CopyTo(mParam, 0);
return mParam;
}
set
{
this.listBox1.Items.AddRange(value);
} } public object Value
{
get { return this.listBox1.SelectedItem; }
}
2.定义一个继承UITypeEditor的TestUITypeEditor,代码如下:
class TestUITypeEditor : 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)
{ IWindowsFormsEditorService wfes = provider.GetService(
typeof(IWindowsFormsEditorService)) as
IWindowsFormsEditorService; if (wfes != null)
{
UserControl1 userctrl = new UserControl1(); userctrl.Param = new string[] { "123", "234", "345" }; wfes.DropDownControl(userctrl);
value = userctrl.Value;
} return value; }
}
3.定义一个属性类TestProperty
public class TestProperty
{
[DisplayName("测试"), Description("测试描述")]
[Editor(typeof(TestUITypeEditor), typeof(UITypeEditor))]
public string TestValue
{
get;
set;
}
}
4.最后拉一个propertygrid控件,到主窗口上,想办法设置控件的SelectedObject
this.propertyGrid1.SelectedObject = new TestProperty { };这个方法也是找了很久,看到某女洋鬼子写的东西才搞通的,希望对你有帮助