A aprovação, assim que eu respondemos-lhe eu mesmo. O exemplo do código mostra que uma classe com uma propriedade que tenha os valores aaa, bbb, ccc disponível em um dropdown em uma grade da propriedade, mas o código adiciona dinâmicamente o DDD & o eee à lista e podem igualmente ser selecionados na grade da propriedade.
Eu estou afixando a solução caso que qualquer um encontra nunca esta linha enquanto procurarando pela mesma coisa.
Apenas criar um projeto novo, adicionar uma grade da propriedade ao formulário e colar o código dentro.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
|
using o sistema;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Dummy_PropertyGrid
{
classe MyConverter: TypeConverter
{
bool público GetStandardValuesSupported da ultrapassagem (contexto de ITypeDescriptorContext)
{
do retorno retificar;
}
ultrapassagem pública StandardValuesCollection GetStandardValues (contexto de ITypeDescriptorContext)
{
Lista da lista = (contexto. Exemplo como Form1.myProp) .MyList;
Cols de StandardValuesCollection = novo
StandardValuesCollection (lista);
cols do retorno;
}
}
classe parcial pública Form1: Formulário
{
myProp público da classe
{
myStr da corda;
[TypeConverter (typeof (MyConverter))]
corda pública MyItem
{
começ {myStr do retorno; }
ajustar {myStr = valor; }
}
Alistar a lista;
[Browsable (falso)]
lista pública MyList
{
começ
{
se (zero do == da lista)
{
lista = lista nova ();
lista. Adicionar (“aaa”);
lista. Adicionar (“bbb”);
lista. Adicionar (“ccc”);
}
retornar a lista;
}
}
}
público Form1 ()
{
InitializeComponent ();
obj do myProp = myProp novo ();
obj.MyList.Add (“DDD”);
obj.MyList.Add (“eee”);
this.propertyGrid1.SelectedObject = obj;
}
}
}
|