2013-09-24 4 views
0

У меня есть UserControl и добавил к нему Свойство. Но я хочу, чтобы свойство добавлялось к Properties Window всякий раз, когда мой UserControl добавлен в форму.Map Property to User Control

Это то, что я использовал, чтобы добавить свойство

Image img; 
public Image SetImage 
{ 
    get { return img; } 
    set { img = value; } 
} 

Это прекрасно работает, но проблема в том, что всякий раз, когда пользователь хочет назвать это свойство, пользователь должен будет вызвать класс пользовательского элемента управления, как

MyControl ctrl = new MyControl(); 
ctrl.Image = Image.FromFile("/*Path to Image*/"); 

, но это изменит все, что свойство для всех элементов управления, которые были добавлены к этой форме, но то, что мне нужно, чтобы отобразить его в UserControl, так что всякий раз, когда пользователь хочет вызвать его, пользователь будет вызывать это как

MyControl1.Image = Image.FromFile("/*Path to Image*/"); 

или

MyControl2.Image = Image.FromFile("/*Path to Image*/"); 

Pls как я достигнуть этого?

ответ

1

Добавьте [Browsable(true)] тег (который находится в пространстве имен System.ComponentModel внутри System.dll) к нужному свойству своего класса управления пользователя:

public class YourUserControl 
{ 
    .... 
    .... 
    [Browsable(true)] 
    public Image SetImage 
    { 
     get { return img; } 
     set { img = value; } 
    } 
}