c# - 如何在 Visual Studio wpf 编辑器中获得(选定的)控件突出显示
问题描述
视觉工作室:
我试图突出显示一个控件,因为它是在 Visual Studio xaml 编辑器中完成的。我试图通过在所选控件上构建另一个控件(荧光笔控件)来做到这一点。但如果选定控件的父级旋转,这将不起作用。
矿:
<Canvas x:Name="parent" Margin="0,0,2,-3" ClipToBounds="True" Background="#FF003AFF">
<Grid x:Name="highlighter" Height="90" Width="128" MouseUp="mu_MouseUp"
MouseMove="Drase_MouseMove" Canvas.Left="30" Canvas.Top="45" Cursor="Arrow">
<Border x:Name="muhhh" Height="{Binding ActualHeight, ElementName=highlighter, Mode=OneWay}"
Width="{Binding ActualWidth, ElementName=mu, Mode=OneWay}"
VerticalAlignment="Top" BorderBrush="#FFFF0C6F" Background="{x:Null}"
BorderThickness="1" Cursor="Arrow" />
</Grid>
<Canvas x:Name="selecteble1" Height="210" Width="485" Canvas.Left="50" Canvas.Top="205"
Background="#FF09E4DA" MouseDown="selecteble1_MouseDown"
MouseLeftButtonDown="selecteble1_MouseLeftButtonDown"
MouseLeftButtonUp="selecteble1_MouseLeftButtonUp" MouseMove="selecteble1_MouseMove">
<Canvas x:Name="selecteble2" Height="135" Width="140" Canvas.Left="230"
Canvas.Top="35" Background="#FF0D302F" MouseDown="selecteble1_MouseDown"
MouseLeftButtonDown="selecteble1_MouseLeftButtonDown"
MouseLeftButtonUp="selecteble1_MouseLeftButtonUp" MouseMove="selecteble1_MouseMove"/>
</Canvas>
</Canvas>
private void posi(Canvas selection)
{
Canvas parent = highlighter.Parent as Canvas;
highlighter.Width = selection.ActualWidth;
highlighter.Height = selection.ActualHeight;
Point p = selection.TransformToAncestor(parent).Transform(new Point(0, 0));
Canvas.SetLeft(mu, p.X);
Canvas.SetTop(mu, p.Y);
highlighter.RenderTransform = selection.RenderTransform;
}
//mouse event on selecteble1 and selecteble1 posi is called
旋转:
顺便说一句highlighter.RenderTransform = "selection.parent".RenderTransform;
,这是行不通的,因为选择也是可旋转的。所以,如果有更好的方法可以做到这一点,如果你能帮助我完成它,我将非常感激。
解决方案
推荐阅读
- excel - 如何在 Excel 公式中添加条件?
- react-native - TouchableOpacity 的提升不适用于轮播图像,React Native
- python - 当一个单元格值等于特定字符串时,获取列表中的 pandas 数据框列名
- python - Pandas:获取列,基于包含列名的另一列
- mysql - 如何使用数组作为输入而不是单个值来执行 MySQL 查询?
- netbeans - 无法在 ubunty 的 netbenas 中安装 oracle java me sdk 插件
- c - 将 char* 传递给 atoi
- angular - 如何以角度获取复选框的选中和未选中值
- flutter - Flutter - 如何修复应用程序元数据,以便将我的应用程序发布到 Google Play?
- javascript - 如何在页面内的复选框列表上触发 .click() 事件?