c# - 如何为用户控件设置默认值?

标签 c# .net winforms

我有一个名为 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 默认。还有一个公共(public)的。

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

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

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

但 marquee 默认情况下始终为真。如果我想关闭跑马灯,我必须通过表单中的公共(public)变量picturePanel1.Marquee = false来设置。如何在用户控件中使选取框默认为 false?

最佳答案

我不确定这是否是您所说的,但如果您指的是您在设计器中看到的默认值,那么您只需添加以下内容属性到您的属性(property):

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

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

相关文章:

c# - 使用 Datagridview 更新数据库

.net - 我可以将我的应用程序池从 .NET 2 切换到 .NET 4 而不会有危险吗?

c# - 是否可以像数组一样定义列表?

c# - 如何使用 Excel Interop 获取 CustomDocumentProperties?

c# - 找不到默认端点...但它就在那里?

c# - 在 setter 中更改 value 关键字是错误的吗?

.net - 了解 F# 静态成员约束(构造小于通用警告)

c# - Entity Framework 中的僵尸对象

c# - 错误 : Thread was being aborted in c# Windows application

c# - 如何强制 DropDownList 样式的 ComboBox 仅在用户单击下拉按钮时打开?