none
C#怎么继承重绘控件,写新类继承自系统类。 RRS feed

  • 问题

  • 如图,我想做一个扫雷,然后思路是重新设计一个Buttonbutton类并继承Button类。然后添加Buttonbutton。

    现在的问题是,如果新类写完了。如何添加新类的控件?我在工具箱里加上去的还是Button,怎么把它变成Buttonbutton


    • 已编辑 ac王dao 2012年10月4日 9:11
    2012年10月4日 9:11

答案

  • 你要在面板上添加,选择这个类库后会看到这个控件,然后添加上去即可。

    family as water

    2012年10月5日 1:07
  • using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    namespace WindowsFormsApplication1
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }

            private void Form1_Load(object sender, EventArgs e)
            {
                buttonnew bt = new buttonnew();

                this.Controls.Add(bt);

            }
        }

        public class buttonnew : Button
        {
            public buttonnew()
            {
                BackColor = Color.Red;
                this.Text = "123";
                this.Location = new Point(100, 64);
                this.Size = new Size(100, 30);
            }
        }
    }
    2012年10月6日 18:31

全部回复

  • 你要在面板上添加,选择这个类库后会看到这个控件,然后添加上去即可。

    family as water

    2012年10月5日 1:07
  • using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    namespace WindowsFormsApplication1
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }

            private void Form1_Load(object sender, EventArgs e)
            {
                buttonnew bt = new buttonnew();

                this.Controls.Add(bt);

            }
        }

        public class buttonnew : Button
        {
            public buttonnew()
            {
                BackColor = Color.Red;
                this.Text = "123";
                this.Location = new Point(100, 64);
                this.Size = new Size(100, 30);
            }
        }
    }
    2012年10月6日 18:31
  • 大哥我看见你好几次了。。多谢你的回复。。你应该看看我这个项目的问题,我的QQ是1097937199,你加一下我我发给你项目你看一下好吧?谢谢
    2012年10月7日 6:34
  • 你好,

    通过你的另外一个帖子:http://social.microsoft.com/Forums/zh-CN/visualcshartzhchs/thread/b858423f-f5a4-4952-a268-148b01ac4afe可以看出你已经解决了这个问题,而且Stone和weipxf回复均为正确答案,所以我将会mark两位回复为answer。

    谢谢理解。


    Lisa Zhu [MSFT]
    MSDN Community Support | Feedback to us


    2012年10月11日 10:18
    版主