gpt4 book ai didi

wpf - 如何设置 WPFExtensions.ZoomControl 默认缩放

转载 作者:行者123 更新时间:2023-11-30 23:47:29 28 4
gpt4 key购买 nike

有谁知道如何在 wpfextensions 中包含的 ZoomControl 中将默认缩放级别设置为 1:1 ?当项目第一次启动时,默认行为是缩放以填充。

我都试过了

 <zoom:ZoomControl Mode="Original">


 <zoom:ZoomControl Zoom="1">

两者都没有工作...

最佳答案

看起来您必须将 Mode 属性设置为 Original ,或者您可以显式调用 ZoomToOriginal在 ZoomControl 的 Loaded 事件处理程序中。

似乎 EqualityToBooleanConverter 会抛出异常,但它不应该。代码如下所示:

public class EqualityToBooleanConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
return object.Equals(value, parameter);
}

public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
if ((bool)value)
return parameter;

//it's false, so don't bind it back
throw new Exception("EqualityToBooleanConverter: It's false, I won't bind back.");
}
}

您需要删除该异常并返回 Binding.DoNothing , 反而。

该转换器用于 ZoomControl 的控制模板,如下所示:
<RadioButton Content="1:1"
GroupName="rbgZoomMode"
IsChecked="{Binding RelativeSource={RelativeSource TemplatedParent},Path=Mode,Converter={StaticResource equalityConverter},ConverterParameter={x:Static Controls:ZoomControlModes.Original}}" />
<RadioButton Content="Fill"
GroupName="rbgZoomMode"
IsChecked="{Binding RelativeSource={RelativeSource TemplatedParent},Path=Mode,Converter={StaticResource equalityConverter},ConverterParameter={x:Static Controls:ZoomControlModes.Fill}}" />

如此有效,它试图仅在 value 为 true 时绑定(bind)回源。但正如您所见,它会引发异常。

关于wpf - 如何设置 WPFExtensions.ZoomControl 默认缩放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6458067/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com