为啥画笔窗格被锁定?
Posted
技术标签:
【中文标题】为啥画笔窗格被锁定?【英文标题】:Why is the brush pane locked?为什么画笔窗格被锁定? 【发布时间】:2013-05-28 14:44:52 【问题描述】:在 Visual Studio 2012 和 Blend 4 中,我都设法“锁定”了画笔窗格。它被黄色边框包围,就像它被绑定一样。据我所知,这发生在每个用户控件以及每个具有画笔属性的对象上。我创建了一个新的用户控件,添加了一个矩形,没有任何绑定,并且画笔窗格是黄色并被锁定。
<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d"
x:Class="PlayCentralPrototype.Sandbox"
x:Name="Window"
Width="1000" Height="880">
<Grid x:Name="LayoutRoot">
<Rectangle Fill="#FF123456" HorizontalAlignment="Left" Height="125" Margin="99,55,0,0" VerticalAlignment="Top" Width="165"/>
</Grid>
</UserControl>
【问题讨论】:
问题的屏幕截图可能会有所帮助。 每个画笔选项旁边是否有黄色小方块也提示Fill
Stroke
等的属性是数据绑定的?接下来我会问,如果你在你的Rectangle
上放一个Style="x:Null"
会发生什么(如果由于某种原因它从某个地方继承了一个全局模板,它确实具有与Rectangle
绑定的那些属性作为@987654327 @.)
仍在等待此错误再次出现
【参考方案1】:
首先确保您的控件未锁定。 (我知道你可能有)。
其次,使用属性语法只能让您访问其中一个画笔类
http://msdn.microsoft.com/en-us/library/system.windows.media.brush.aspx
尝试使用对象元素语法
<Rectangle Width="75" Height="75">
<Rectangle.Fill>
<SolidColorBrush Color="Red" />
</Rectangle.Fill>
</Rectangle>
包含一个来自 MSDN 的链接,它提供了从头到尾的代码演练。 http://msdn.microsoft.com/en-us/library/ms752299.aspx
适用于 Visual Studio 2012 的混合 http://msdn.microsoft.com/en-us/library/windows/apps/jj129478.aspx
另一个尝试的解决方案是卸载和删除所有 Visual Studio 安装和相关安装,然后重新安装所有必需的 SDK、C++ Redistributable 等。仔细检查你是否拥有一切。升级时发现VS有问题。
如果这能解决您的困难,请告诉我。
【讨论】:
以上是关于为啥画笔窗格被锁定?的主要内容,如果未能解决你的问题,请参考以下文章
为啥我的图片加上图层蒙版后,用画笔擦出半透明效果时候,擦出来的都是黑白的小方格,怎么才能擦出白的