vs2008设计师不会表现出混合2控制器的表达 [英] vs2008 designer won't show expression blend 2 controlers
问题描述
大家好,我在表达式混合2中创建了一个新项目,当使用vs2008进行编辑时,设计师只显示基本层的Viewbox但忽略其余部分,没有错误显示和intellisence正常工作并识别所有对象在XAML
XAML代码是:
< Window
xmlns =" http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns :x =" http://schemas.microsoft.com/winfx/2006/xaml"
x:Class =" Mule.Window1"
x:Name =" Window"
Title = " Window1"
Width =" 1024"高度= QUOT; 768"背景= QUOT; {X:空}"的xmlns:d =" HTTP://schemas.microsoft.com/expression/blend/2008"的xmlns:MC = QUOT; HTTP://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable =" d">
< Viewbox Width =" 1024"高度="768">
< Grid VerticalAlignment =" Bottom"宽度= QUOT; 1024"高度= QUOT; 768" RenderTransformOrigin = QUOT; 0.495,0.499" Background ="#FF735FF8">
< Grid Background =" {x:Null}" d:LayoutOverrides = QUOT;&的HorizontalAlignment QUOT;的HorizontalAlignment = QUOT;右"余量= QUOT; 0,0,0,396.015" VerticalAlignment = QUOT;底座"宽度= QUOT; 517.797"高度= QUOT; 371.985" OpacityMask ="#FF0B0DF6">
< Rectangle Fill =" {x:Null}"的HorizontalAlignment = QUOT;拉伸"余量= QUOT; 38.858,54.977,21.142,0" VerticalAlignment = QUOT;陀螺"高度= QUOT; 86.419"行程="#FF000000"半径X = QUOT; 15"半径Y = QUOT; 15" OpacityMask =" #FFF92F2F" />
< TextBox HorizontalAlignment =" Left"余量= QUOT; 83.202,105.415,0,0" X:名称= QUOT;脚" VerticalAlignment = QUOT;陀螺"宽度= QUOT; 51"文本= QUOT;文本框" TextWrapping = QUOT;包覆与QUOT;前景= QUOT;#FFFFFFFF" ToolTip =" Foot number(1-4)>>
< TextBox.Background>
< LinearGradientBrush EndPoint =" 0.5,1" StartPoint =" 0.5,0">
< GradientStop Color ="#FF000000" Offset =" 0">
< GradientStop Color ="#FFF79907" Offset =" 1">
< / LinearGradientBrush>
< /TextBox.Background>
< / TextBox>
< TextBox HorizontalAlignment =" Right"余量= QUOT; 0,105.415,67.065,0" X:名称= QUOT; Z" VerticalAlignment = QUOT;陀螺"宽度= QUOT; 51"文本= QUOT;文本框" TextWrapping = QUOT;包覆与QUOT;前景= QUOT;#FFFFFFFF" ToolTip =" Z coord(1-255)>>
< TextBox.Background>
< LinearGradientBrush EndPoint =" 0.5,1" StartPoint =" 0.5,0">
< GradientStop Color ="#FF000000" Offset =" 0">
< GradientStop Color ="#FFF79907" Offset =" 1">
< / LinearGradientBrush>
< /TextBox.Background>
< / TextBox>
< TextBox d:LayoutOverrides =" HorizontalAlignment"的HorizontalAlignment = QUOT;右"余量= QUOT; 0,105.415,169.393,0" X:名称= QUOT; Y" VerticalAlignment = QUOT;陀螺"宽度= QUOT; 51"文本= QUOT;文本框" TextWrapping = QUOT;包覆与QUOT;前景= QUOT;#FFFFFFFF" ToolTip =" Y coord(1-255)">
< TextBox.Background>
< LinearGradientBrush EndPoint =" 0.5,1" StartPoint =" 0.5,0">
< GradientStop Color ="#FF000000" Offset =" 0">
< GradientStop Color ="#FFF79907" Offset =" 1">
< / LinearGradientBrush>
< /TextBox.Background>
< / TextBox>
< TextBox HorizontalAlignment =" Left"余量= QUOT; 191.06,105.415,0,0" X:名称=英寸×" VerticalAlignment = QUOT;陀螺"宽度= QUOT; 51"文本= QUOT;文本框" TextWrapping = QUOT;包覆与QUOT;前景= QUOT;#FFFFFFFF" ToolTip =" X coord(1-255)">
< TextBox.Background>
< LinearGradientBrush EndPoint =" 0.5,1" StartPoint =" 0.5,0">
< GradientStop Color ="#FF000000" Offset =" 0">
< GradientStop Color ="#FFF79907" Offset =" 1">
< / LinearGradientBrush>
< /TextBox.Background>
< / TextBox>
< Label HorizontalAlignment =" Right"余量= QUOT; 0,0,383.595,266.57" VerticalAlignment = QUOT;底座"宽度= QUOT; 51"高度= QUOT; 27.277" Content =" Foot#"了borderThickness = QUOT; 1,1,1,1" Panel.ZIndex = QUOT; 0"背景= QUOT; {X:空}" fontWeight设置= QUOT;粗体" OpacityMask = QUOT;#FFFFFFFF" BorderBrush = QUOT; {X:空}" Foreground =" #FFFFFFF" />
< Label HorizontalAlignment =" Left"余量= QUOT; 191.06,78.138,0,0" VerticalAlignment = QUOT;陀螺"内容="X coord"宽度= QUOT; 62"高度= QUOT; 27.277"了borderThickness = QUOT; 1,1,1,1"背景= QUOT; {X:空}"前景= QUOT;#FFFFFFFF" FontWeight =" Bold">
< Label Margin =" 0,79.91,159.393,0" VerticalAlignment = QUOT;陀螺"内容="Y coord""的HorizontalAlignment = QUOT;右"宽度= QUOT; 61"高度= QUOT; 25.505"了borderThickness = QUOT; 1,1,1,1"背景= QUOT; {X:空}"前景= QUOT;#FFFFFFFF" FontWeight =" Bold">
< Label Margin =" 0,78.138,57.065,0" VerticalAlignment = QUOT;陀螺" Content =" Z coord'"的HorizontalAlignment = QUOT;右"宽度= QUOT; 61"高度= QUOT; 27.277"了borderThickness = QUOT; 1,1,1,1"背景= QUOT; {X:空}"前景= QUOT;#FFFFFFFF" FontWeight =" Bold" />
< Button d:LayoutOverrides =" VerticalAlignment"的HorizontalAlignment = QUOT;左"余量= QUOT; 83.202,0,0,166.708" VerticalAlignment = QUOT;底座"含量="检查"高度= QUOT; 32.277"宽度= QUOT; 75.083"前景= QUOT;#FFFFF8F8"不透明度= QUOT 1 QUOT;光标= QUOT;手" ToolTip ="检查条件(根据& quot; Shob& quot;)">
< Button.Background>
< RadialGradientBrush>
< GradientStop Color ="#FF000000" ; Offset =" 0">
< GradientStop Color ="#FFCF5D5D" Offset =" 1">
< / RadialGradientBrush>
< /Button.Background>
< Button.OpacityMask>
< RadialGradientBrush>
< GradientStop Color ="#FF000000" Offset =" 0">
< GradientStop Color =" #FFBC4D4D" Offset =" 1">
< / RadialGradientBrush>
< /Button.OpacityMask>
< / Button>
< Button HorizontalAlignment =" Right"余量= QUOT; 0,173,67.065,166.708"宽度= QUOT; 75.083"内容="运行"!;前景= QUOT;#FFFFF8F8"光标= QUOT;手" ToolTip =" Run manual move">
< Button.Background>
< RadialGradientBrush>
< GradientStop Color ="#FF000000" Offset =" 0">
< GradientStop Color ="#FFCF5D5D" Offset =" 1">
< / RadialGradientBrush>
< /Button.Background>
< / Button>
< Button Margin =" 236.119,0,206.595,77.708 "内容="设置容差"高度= QUOT; 32.277" VerticalAlignment = QUOT;底座"前景= QUOT;#FFFFF8F8"光标= QUOT;手" ToolTip ="设置活塞公差">
< Button.Background>
< RadialGradientBrush>
< GradientStop Color ="#FF000000" Offset =" 0">
< GradientStop Color ="#FFCF5D5D" Offset =" 1">
< / RadialGradientBrush>
< /Button.Background>
< / Button>
< Rectangle Fill =" {x:Null} "行程="#FF3B5B82"不透明度= QUOT 1 QUOT; OpacityMask = QUOT;#FF1F31F2" StrokeThickness =" 5">
< / Grid>
< Grid Background =" {x:Null}"的HorizontalAlignment = QUOT;左" VerticalAlignment = QUOT;陀螺"宽度= QUOT; 506.203"高度="371.985"/>
<网格背景=" {x:Null}" d:LayoutOverrides =" HorizontalAlignment,VerticalAlignment"的HorizontalAlignment = QUOT;右"余量= QUOT; 0,0,8.007,8.015" VerticalAlignment = QUOT;底座"宽度= QUOT; 1024"高度=" 388" />
< / Grid>
< / Viewbox>
< / Window>
Hi
这是Visual Studio 2008 WPF设计者的一个已知限制。
在Visual Studio 2008中,ViewBox控件显示为"占位符"控件。控制。它的内容永远不会显示。
如果您需要在Visual Studio 2008中使用ViewBox,特别是在使用它们作为您设计中最外层的包装器时,您最好的策略是放置在UserControl中进行设计,在那里进行设计工作,并将UC包装在窗口中的ViewBox中,如下所示:
< Window ...>
< Grid>
<视框>
<我的:用户控件/>
< /视框>
< /网格>
< /窗>
这个策略甚至可以帮助Blend,因为在ViewBox调整大小的环境中布置元素是繁琐的 - 最好将它们布局然后再缩放。
我希望这个帮助,
马克
hi everybody,
i created a new project in expression blend 2, when editing with vs2008 the designer shows only the Viewbox which is the base layer but ignoring the rest, no error show and intellisence works fine and recognize all objects in XAML
XAML code is:
<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="Mule.Window1"
x:Name="Window"
Title="Window1"
Width="1024" Height="768" Background="{x:Null}" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d">
<Viewbox Width="1024" Height="768">
<Grid VerticalAlignment="Bottom" Width="1024" Height="768" RenderTransformOrigin="0.495,0.499" Background="#FF735FF8">
<Grid Background="{x:Null}" d:LayoutOverrides="HorizontalAlignment" HorizontalAlignment="Right" Margin="0,0,0,396.015" VerticalAlignment="Bottom" Width="517.797" Height="371.985" OpacityMask="#FF0B0DF6">
<Rectangle Fill="{x:Null}" HorizontalAlignment="Stretch" Margin="38.858,54.977,21.142,0" VerticalAlignment="Top" Height="86.419" Stroke="#FF000000" RadiusX="15" RadiusY="15" OpacityMask="#FFF92F2F"/>
<TextBox HorizontalAlignment="Left" Margin="83.202,105.415,0,0" x:Name="Foot" VerticalAlignment="Top" Width="51" Text="TextBox" TextWrapping="Wrap" Foreground="#FFFFFFFF" ToolTip="Foot number (1-4)">
<TextBox.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FF000000" Offset="0"/>
<GradientStop Color="#FFF79907" Offset="1"/>
</LinearGradientBrush>
</TextBox.Background>
</TextBox>
<TextBox HorizontalAlignment="Right" Margin="0,105.415,67.065,0" x:Name="Z" VerticalAlignment="Top" Width="51" Text="TextBox" TextWrapping="Wrap" Foreground="#FFFFFFFF" ToolTip="Z coord (1-255)">
<TextBox.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FF000000" Offset="0"/>
<GradientStop Color="#FFF79907" Offset="1"/>
</LinearGradientBrush>
</TextBox.Background>
</TextBox>
<TextBox d:LayoutOverrides="HorizontalAlignment" HorizontalAlignment="Right" Margin="0,105.415,169.393,0" x:Name="Y" VerticalAlignment="Top" Width="51" Text="TextBox" TextWrapping="Wrap" Foreground="#FFFFFFFF" ToolTip="Y coord (1-255)">
<TextBox.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FF000000" Offset="0"/>
<GradientStop Color="#FFF79907" Offset="1"/>
</LinearGradientBrush>
</TextBox.Background>
</TextBox>
<TextBox HorizontalAlignment="Left" Margin="191.06,105.415,0,0" x:Name="X" VerticalAlignment="Top" Width="51" Text="TextBox" TextWrapping="Wrap" Foreground="#FFFFFFFF" ToolTip="X coord (1-255)">
<TextBox.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FF000000" Offset="0"/>
<GradientStop Color="#FFF79907" Offset="1"/>
</LinearGradientBrush>
</TextBox.Background>
</TextBox>
<Label HorizontalAlignment="Right" Margin="0,0,383.595,266.57" VerticalAlignment="Bottom" Width="51" Height="27.277" Content="Foot #" BorderThickness="1,1,1,1" Panel.ZIndex="0" Background="{x:Null}" FontWeight="Bold" OpacityMask="#FFFFFFFF" BorderBrush="{x:Null}" Foreground="#FFFFFFFF"/>
<Label HorizontalAlignment="Left" Margin="191.06,78.138,0,0" VerticalAlignment="Top" Content="X coord" Width="62" Height="27.277" BorderThickness="1,1,1,1" Background="{x:Null}" Foreground="#FFFFFFFF" FontWeight="Bold"/>
<Label Margin="0,79.91,159.393,0" VerticalAlignment="Top" Content="Y coord'" HorizontalAlignment="Right" Width="61" Height="25.505" BorderThickness="1,1,1,1" Background="{x:Null}" Foreground="#FFFFFFFF" FontWeight="Bold"/>
<Label Margin="0,78.138,57.065,0" VerticalAlignment="Top" Content="Z coord'" HorizontalAlignment="Right" Width="61" Height="27.277" BorderThickness="1,1,1,1" Background="{x:Null}" Foreground="#FFFFFFFF" FontWeight="Bold"/>
<Button d:LayoutOverrides="VerticalAlignment" HorizontalAlignment="Left" Margin="83.202,0,0,166.708" VerticalAlignment="Bottom" Content="Check" Height="32.277" Width="75.083" Foreground="#FFFFF8F8" Opacity="1" Cursor="Hand" ToolTip="Check conditions (according to "Shob")">
<Button.Background>
<RadialGradientBrush>
<GradientStop Color="#FF000000" Offset="0"/>
<GradientStop Color="#FFCF5D5D" Offset="1"/>
</RadialGradientBrush>
</Button.Background>
<Button.OpacityMask>
<RadialGradientBrush>
<GradientStop Color="#FF000000" Offset="0"/>
<GradientStop Color="#FFBC4D4D" Offset="1"/>
</RadialGradientBrush>
</Button.OpacityMask>
</Button>
<Button HorizontalAlignment="Right" Margin="0,173,67.065,166.708" Width="75.083" Content="Run!" Foreground="#FFFFF8F8" Cursor="Hand" ToolTip="Run manual move">
<Button.Background>
<RadialGradientBrush>
<GradientStop Color="#FF000000" Offset="0"/>
<GradientStop Color="#FFCF5D5D" Offset="1"/>
</RadialGradientBrush>
</Button.Background>
</Button>
<Button Margin="236.119,0,206.595,77.708" Content="Set tolerance" Height="32.277" VerticalAlignment="Bottom" Foreground="#FFFFF8F8" Cursor="Hand" ToolTip="Sets the piston tolerance">
<Button.Background>
<RadialGradientBrush>
<GradientStop Color="#FF000000" Offset="0"/>
<GradientStop Color="#FFCF5D5D" Offset="1"/>
</RadialGradientBrush>
</Button.Background>
</Button>
<Rectangle Fill="{x:Null}" Stroke="#FF3B5B82" Opacity="1" OpacityMask="#FF1F31F2" StrokeThickness="5"/>
</Grid>
<Grid Background="{x:Null}" HorizontalAlignment="Left" VerticalAlignment="Top" Width="506.203" Height="371.985"/>
<Grid Background="{x:Null}" d:LayoutOverrides="HorizontalAlignment, VerticalAlignment" HorizontalAlignment="Right" Margin="0,0,8.007,8.015" VerticalAlignment="Bottom" Width="1024" Height="388"/>
</Grid>
</Viewbox>
</Window>
Hi
This is a known limitation of the Visual Studio 2008 WPF designer.
In Visual Studio 2008, the ViewBox control was shown as a "placeholder" control. Its contents are never shown.
If you need to work with ViewBoxes in Visual Studio 2008, especially when working with them as the outermost wrapper of your design as in your case, your best strategy is to put your design in a UserControl, do your design work there, and wrap the UC in the ViewBox in your window like so:
<Window...>
<Grid>
<ViewBox>
<my:UserControl/>
</ViewBox>
</Grid>
</Window>
This strategy helps even in Blend, because laying out elements in a ViewBox resize environment is fiddly - it's better to lay them out and then have them scaled afterwards.
I hope this helps,
Mark
这篇关于vs2008设计师不会表现出混合2控制器的表达的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!