相对于背景图像对齐/缩放控件

时间:2016-04-19 16:42:36

标签: c# wpf xaml user-controls

我很难完成以下要求。

我的任务是在WPF中创建一个可以托管到Windows窗体应用程序中的用户控件。

我需要将控件(文本框)与背景图像对齐。用户必须能够调整窗口大小,或放大或缩小控件,文本框必须调整其大小以保持相对于背景图像。

例如,请考虑以下屏幕截图:

enter image description here

我需要两个盒子相对于图表图像保持相同的位置。目前,如果我扩展用户控件的大小,我会得到这样的结果:

enter image description here

我的XAML如下:

<UserControl x:Class="MyControl"
             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="444" Loaded="UserControl_Loaded" Width="834">

    <Grid Name="MyGrid">
        <Image Name="MyImage" Width="Auto" Height="Auto" Source="/ParklandCounty.Dynamics.AX.CANT4;component/Resources/Chart.png" Stretch="UniformToFill" VerticalAlignment="Bottom" />

        <TextBox x:Name="txt14Dollars" Margin="558,78,111,310" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" TextWrapping="NoWrap" Text="BOX 1" Background="Transparent" TextAlignment="Right" FontFamily="Arial" FontSize="14" FontWeight="Bold" BorderBrush="#FF0524F9"/>
        <TextBox x:Name="txt15Dollars" Margin="579,144,90,244" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" TextWrapping="NoWrap" Text="BOX 2" Background="Transparent" TextAlignment="Right" FontFamily="Arial" FontSize="14" FontWeight="Bold" BorderBrush="#FF0524F9"/>

    </Grid>

</UserControl>

编辑:

关于我想要的最终结果的更多细节。希望下面的模型解释我想要的东西:

本质上,用户控件将托管在现有的Windows窗体应用程序中。将有一个表单作为图像显示为控件的背景。我需要在表单上“覆盖”我自己的文本框,因此它们与现有的表单文本框对齐。

如果用户重新调整父窗口的大小,用户控件将相应地扩展或收缩,从而增加或减少图像的尺寸。

wpf文本控件应保持与表单图像的相对位置和大小。

enter image description here

0 个答案:

没有答案