C# 当我使用设计器向窗体添加新控件时,如何阻止visual studio更改WPF窗体中控件的属性?

C# 当我使用设计器向窗体添加新控件时,如何阻止visual studio更改WPF窗体中控件的属性?,c#,wpf,visual-studio-2010,visual-studio,visual-studio-2005,C#,Wpf,Visual Studio 2010,Visual Studio,Visual Studio 2005,我正在使用visual studio ultimate 2010。在WPF表单中,我有一个包含许多控件的网格。每当我尝试使用设计器向网格添加新控件时,VisualStudio都会以某种方式更改所有其他控件的属性,如grid.Row、grid.Column属性。由于这个原因,我必须手动更改这些属性。如何阻止visual studio更改wpf表单中某些控件的属性?是否有任何方法可以锁定WPF表单中的某些控件,使其属性不会更改。 简单的解决方案将不胜感激。 多谢各位 我见过一些与此相关的问题,但没有

我正在使用visual studio ultimate 2010。在WPF表单中,我有一个包含许多控件的网格。每当我尝试使用设计器向网格添加新控件时,VisualStudio都会以某种方式更改所有其他控件的属性,如grid.Row、grid.Column属性。由于这个原因,我必须手动更改这些属性。如何阻止visual studio更改wpf表单中某些控件的属性?是否有任何方法可以锁定WPF表单中的某些控件,使其属性不会更改。 简单的解决方案将不胜感激。 多谢各位


我见过一些与此相关的问题,但没有找到一个很好的解决方案。

设计师很差劲。如果你做了很多事情,请考虑复制和粘贴XAML。 或者,如果你创建了很多很多元素(听起来你可能是),在一些for循环中这样做:

nameofgrid.Children.Add(listoftextblocks[i]);
Grid.SetColumn(listoftextblocks[i], 0);
Grid.SetRow(listoftextblocks[i], i + 1) 

希望有人能在编辑器方面提供更多帮助,尤其是,我发现你必须非常小心鼠标放置物品的位置,但我希望这些提示会有所帮助。

如果你在导致现有控件移动的位置添加新控件,设计师将更改现有控件的附加布局相关属性,所以,实际上,这只能归结为在添加新内容时要小心

或者做我们最终要做的事情,这几乎完全抛弃了设计师。我们构建的大部分内容都是手工在XAML中构建的,一旦您熟悉它,它将是一种更好的体验,因为您可以控制各个方面。设计师很适合快速地将某些东西组合在一起,但是如果您希望它的行为完全符合您的期望,那么您必须在某个时候进入XAML


尤其是当您开始编写数据模板时。

是的,这很有帮助,但希望有更好的解决方案。我想是的,如果我今天没有找到有用的东西,那么我将不得不在XAML中完成大部分工作。