直接在Visual Studio项目中使用自定义控件

时间:2010-04-04 09:28:34

标签: c# listview custom-controls

我想使用listview flicker“less”控件http://geekswithblogs.net/CPound/archive/2006/02/27/70834.aspx

直接在我的c#项目中。 我不想制作自定义用户控件项目,将其构建为dll,然后将其导入我的项目中。我只想在我正在制作的c#Programm中使用这一切。

我想我必须在我的项目中添加一个类,并添加代码,但是如何直接在我的项目中使用该控件?

2 个答案:

答案 0 :(得分:2)

在Visual Studio中,右键单击项目,然后单击ADD | USER CONTROL。将新控件命名为ListViewNF,然后点击ADD

查看新课程的代码。改变这一行:

public partial class ListViewNF : UserControl

到此:

public partial class ListViewNF : ListView

和重建。您将收到有关AutoScaleMode的编译器错误 - 只需删除InitializeComponent中导致错误的行:

// delete this line:
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;

到目前为止,您的代码将如下所示:

public partial class ListViewNF : ListView 
{ 
    public ListViewNF() 
    {
        InitializeComponent();
    }
}

将其更改为:

public partial class ListViewNF : ListView
{
    public ListViewNF()
    {
        InitializeComponent();

        //Activate double buffering
        this.SetStyle(ControlStyles.OptimizedDoubleBuffer | 
            ControlStyles.AllPaintingInWmPaint, true);

        //Enable the OnNotifyMessage event so we get a chance to filter out 
        // Windows messages before they get to the form's WndProc
        this.SetStyle(ControlStyles.EnableNotifyMessage, true);
    }

    protected override void OnNotifyMessage(Message m)
    {
        //Filter out the WM_ERASEBKGND message
        if (m.Msg != 0x14)
        {
            base.OnNotifyMessage(m);
        }
    }

}

重建您的项目,现在您应该在左侧(顶部右侧)的控件工具箱中看到ListViewNF。您可以将此控件拖动到设计器中的表单上,就像常规ListView

一样

答案 1 :(得分:0)

在visual studio项目中打开工具箱。然后点击“选择项目”。单击“浏览”,然后选择包含控件的程序集。现在,您可以在设计器中使用控件。希望这就是你所要求的。