public class MyListView: System.Windows.Forms.ListView
{
。。。。
}
如果去掉 public 也可以產生DLL,但當你把它添加到使用者控制項時就會提示:在e:/mylistview/bin/myListView.dll中沒有可放置在工具箱上的組件
2,控制項需要有自己的空的建構函式,即使如果存在帶參數的建構函式也應存在空的建構函式
View Code
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.ComponentModel;using System.Windows.Forms;using System.Drawing;namespace CustomControlSample{ public class FirstControl : Control { public FirstControl() { } private ContentAlignment alignmentValue = ContentAlignment.MiddleLeft; [ Category("Alignment"), Description("Specifies the alignment of text.") ] public ContentAlignment TextAlignment { get { return alignmentValue; } set { alignmentValue = value; Invalidate(); } } protected override void OnPaint(PaintEventArgs e) { base.OnPaint(e); StringFormat style = new StringFormat(); style.Alignment = StringAlignment.Near; switch (alignmentValue) { case ContentAlignment.MiddleLeft: style.Alignment = StringAlignment.Near; break; case ContentAlignment.MiddleRight: style.Alignment = StringAlignment.Far; break; case ContentAlignment.MiddleCenter: style.Alignment = StringAlignment.Center; break; } e.Graphics.DrawString( Text, Font, new SolidBrush(ForeColor), ClientRectangle, style); } }}