我有一个名为PicturePanel的用户控件。关于鼠标事件(MouseDown,MouseMove,MouseUp),我具有以下内容:

protected override void OnMouseDown(MouseEventArgs e)
{
    if (marquee == true && e.Button == MouseButtons.Left && BackgroundImage != null)
    {
          //Code to create rectangular marquee
    }
    else
    {

    }
}


默认情况下,类级别变量private bool marquee = false。和一个公共的。

private bool marquee = false;
public bool Marquee
{
    get { return marquee; }
    set { marquee = value; }
}


我什至尝试在初始化时分配false

public PicturePanel()
{
    InitializeComponent();
    marquee = false;
}


但是默认情况下,选取框始终为真。如果要关闭选取框,则必须通过表单中的公共变量picturePanel1.Marquee = false进行设置。如何在用户控件中默认将选取框设置为假?

最佳答案

我不确定这是否是您在说的,但是如果您引用的是设计器中看到的默认值,则只需在属性中添加以下属性即可:

[DefaultValue{false)]
public bool Marquee
...

关于c# - 如何设置用户控件的默认值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7899024/

10-10 13:45