2016-07-04 58 views
0

。我向你们提出了一个问题。我有一个名为“ResourceMonitor”的用户控件,我试图确保当它的周围的任务栏得到缩放(已编写和测试),我的UserControl的ActualWidth得到1倍和一半的ActualHeight(以便在缩放时保持一致)。我试图使用RelativeSource检索ActualHeight(的ResourceMonitor UserControl的)的大小,然后将其作为参数传递给我的转换器,然后将其分配给宽度。回到顶端这篇文章中的信息适用于:有没有更好/更简单的方法来做到这一点?如何获取ActualHeight的值,并将其传递到一个转换器,该转换器将结果输入到此处的xaml的新手实际宽度

<StackPanel Grid.Column="2" Orientation="Horizontal" HorizontalAlignment="Right" VerticalAlignment="Center" Margin="0,0,2,0"> 
    <rm:ResourceMonitor Margin="0,0,4,0" 
        ShowMemoryTrace="True" 
        MemoryTraceColor="#FF3399FF" 
        Width="{Binding Path = {Path=ActualHeight, RelativeSource={RelativeSource Self}}, Converter={StaticResource ResourceMonitorWidthScalingConverter}}"> 
    </rm:ResourceMonitor> 
    <Viewbox> 
     <StackPanel Orientation="Horizontal"> 
      <local:ServerStatus DataContext="{Binding ServerStatusViewModel}"/> 
     </StackPanel> 
    </Viewbox> 
</StackPanel> 

我在这里得到了几个错误,一个是说“类型路径的使用方式与标记扩展,但不从的MarkupExtension派生”

“的arguement名失踪”

请帮助:/

回答

1

您的绑定表达式写错了。

​​

使用转换器是MVVM的推荐方法之一。但是,如果您不介意代码隐藏,则可以通过处理事件在代码隐藏中实现。但严重的是,使用转换器要容易得多。

相关问题