C# 在Visual Studio(设计器视图)中重建时,userControl中的更改将被擦除
我的意图是在另一个名为NavigationBar的用户控件中使用它 虽然我可以看到NavigationItem.cs类的LinkText属性,但当我从属性窗格中更改它时,会弹出一条警告: 警告1您必须重新生成您的 项目的更改 Uboldi.LeftNavigationbar将显示在中 任何开放的设计师 公平地说,我重新构建,然后我刚刚输入的更改就消失了 你知道为什么吗C# 在Visual Studio(设计器视图)中重建时,userControl中的更改将被擦除,c#,winforms,user-controls,C#,Winforms,User Controls,我的意图是在另一个名为NavigationBar的用户控件中使用它 虽然我可以看到NavigationItem.cs类的LinkText属性,但当我从属性窗格中更改它时,会弹出一条警告: 警告1您必须重新生成您的 项目的更改 Uboldi.LeftNavigationbar将显示在中 任何开放的设计师 公平地说,我重新构建,然后我刚刚输入的更改就消失了 你知道为什么吗 感谢您抽出时间。也许您的更改没有被设计师保留下来 是否尝试使用DesignerSerializationVisibilityAt
感谢您抽出时间。也许您的更改没有被设计师保留下来 是否尝试使用DesignerSerializationVisibilityAttribute
设计师可能不会保留您的更改 是否尝试使用DesignerSerializationVisibilityAttribute
这是一个很老的问题,但没有答案。以下是我发现的有效方法。希望这能帮助其他人
This is my navigationItem.cs user control:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Uboldi.Helpers;
namespace Uboldi
{
public partial class NavigationItem : UserControl
{
public bool IsSelected { get; set; }
private string _linkText = String.Empty;
[Browsable(true)]
public string LinkText
{
get { return this._linkText; }
set
{
this._linkText = value;
RefreshDisplay();
}
}
public NavigationItem()
{
InitializeComponent();
RefreshDisplay();
}
private void RefreshDisplay()
{
if (IsSelected)
this.BackColor = CustomizationHelper.GetSecondaryColor();
else
this.BackColor = CustomizationHelper.GetPrimaryColor();
lblText.Text = Text;
}
}
}
这是旧的,但没有答案。以下是我发现的有效方法。希望这能帮助其他人
This is my navigationItem.cs user control:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Uboldi.Helpers;
namespace Uboldi
{
public partial class NavigationItem : UserControl
{
public bool IsSelected { get; set; }
private string _linkText = String.Empty;
[Browsable(true)]
public string LinkText
{
get { return this._linkText; }
set
{
this._linkText = value;
RefreshDisplay();
}
}
public NavigationItem()
{
InitializeComponent();
RefreshDisplay();
}
private void RefreshDisplay()
{
if (IsSelected)
this.BackColor = CustomizationHelper.GetSecondaryColor();
else
this.BackColor = CustomizationHelper.GetPrimaryColor();
lblText.Text = Text;
}
}
}
@Sergio它们被称为属性而不是属性。:)@千叶谢谢。我认为出现这个问题是因为我需要给那个属性另一个装饰器,包括可浏览的,对吗?有什么想法吗?@Sergio它们被称为属性而不是属性@千叶谢谢。我认为出现这个问题是因为我需要给那个属性另一个装饰器,包括可浏览的,对吗?有什么想法吗?