C#带按钮的文本框TextBoxContainButton
生活随笔
收集整理的這篇文章主要介紹了
C#带按钮的文本框TextBoxContainButton
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
經常需要用到各種組合控件,每次組合太麻煩,通過打包成自定義控件,方便調用。
帶按鈕的文本框,如下圖:
文本框內可以輸入文本,響應文本框內容變化事件,按鈕可以設置點擊事件,圖標
通過3個組合控件實現。
1 新建自定義控件,添加兩個文本框,1個按鈕,1個鼠標提示控件(ToolTip)。
一個文本框作為背景,另一個文本框作為輸入框,一個按鈕點擊用,只需通過設置控件屬性,編輯成如下效果
2 添加常用屬性
[Category("自定義"), Description("按鈕圖片")]public Image ButtonImage{set{button.Image = value;}get{return button.Image;}}[Category("自定義"), Description("文本框鼠標懸停提示文本")]public string TextBoxToolTipText{set{toolTip1.SetToolTip(this.textBoxFront, value);}get{return toolTip1.GetToolTip(this.textBoxFront);}}[Category("自定義"), Description("按鈕鼠標懸停提示文本")]public string ButtonToolTipText{set{toolTip1.SetToolTip(this.button, value);}get{return toolTip1.GetToolTip(this.button);}}[Category("自定義"), Description("文本框內文本")]public string TextBoxText{set{textBoxFront.Text = value;}get{return textBoxFront.Text;}}private bool textBoxReadOnly = false;[Category("自定義"), Description("文本框只讀")]public bool TextBoxReadOnly{set{textBoxReadOnly = value;textBoxFront.ReadOnly = textBoxReadOnly;textBoxFront.ReadOnly = textBoxReadOnly;}get{return textBoxReadOnly;}}[Category("自定義"), Description("文本框背景色")]public Color TextBoxBackColor{set{textBoxBack.BackColor = value;textBoxFront.BackColor = value;}get{return textBoxBack.BackColor;}}?
3 添加按鈕點擊事件(其他事件添加類似)
public delegate void ButtonClickEventHandler(Object sender, EventArgs e);public event ButtonClickEventHandler ButtonClick; //聲明事件protected virtual void OnButtonClick(EventArgs e){if (ButtonClick != null){ // 如果有對象注冊 ButtonClick(this, e); // 調用所有注冊對象的方法 }}private void button_Click(object sender, EventArgs e){OnButtonClick(e); // 調用 OnButtonClick方法 }?
4 屬性的使用:
5 事件的使用
轉載于:https://www.cnblogs.com/yepoint/p/7238667.html
總結
以上是生活随笔為你收集整理的C#带按钮的文本框TextBoxContainButton的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HDR 成像技术学习(三)—— LOFI
- 下一篇: LM算法求单应矩阵