【发布时间】:2011-11-15 18:29:12
【问题描述】:
我正在开发一个 WPF 应用程序,并且我创建了一个自定义用户控件,因为我需要在主窗口上创建它的实例。所以,这就是我创建新实例的方式:
var MyCard = new vCard();
MainGrid.Children.Add(MyCard);
Grid.SetColumn(MyCard, 1);
Grid.SetRow(MyCard, 0);
但是我需要把每一个都按顺序排列,所以,我该如何设置每一个的 X & Y 位置。我尝试在我的用户控件中创建一个方法来设置边距属性,例如:
public void SetX(double X)
{
double Y =this.Margin.Top;
this.Margin = new Thickness(X, Y, 0, 0);
}
但是,它不起作用。还有其他方法吗?
【问题讨论】:
-
如果您想在 Grid 单元格中执行任意 X、Y 定位,请尝试在该网格位置放置一个 Canvas,然后使用 Canvas.Left 和 Canvas.Top 附加属性将控件定位在帆布。
标签: c# wpf user-controls