当我在WPF中创建一个新的UserControl
时,studio会创建一些XAML:
<UserControl x:Class="MOG.Objects.Date.Calender"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300">
<Grid>
</Grid>
</UserControl>
在UserContol
我还可以添加Width属性。 DesignWidth
和Width
之间有什么区别?
答案 0 :(得分:60)
d:DesignHeight
和d.DesignWidth
适用于Designer(WYSIWYG),Visual Studio或Expression Blend。 Height
和 Width
实际上是用于运行时。
答案 1 :(得分:19)
使用了属性d:DesignHeight
和d:DesignWidth="300"
,因为(Source
):
UserControls未嵌入父视图中。 Width
和Height
未设置。
不调用root-element的构造函数。根元素由设计者替换。未创建ViewModel。
控件表现不同。没有鼠标和键盘事件。 加载设计时间延长
为了改善设计体验,Microsoft提供了特殊的设计时属性,可以添加到任何WPF元素中,并作为设计工具的提示。
前缀d:
中使用的所有内容都用于设计模式,其中包括以下属性:
d:DesignWidth
d:DesignHeight
d:LayoutOverrides