我正在使用WPF工具包用于向导类。 从一个页面我想根据选择的单选按钮跳转到另一个页面(如果单击是,那么从第3页到第4页,否则,表示,单击没有单选按钮,所以从第3页到第5页) 我看到没有OnNext事件,但有一个名为NextPage的属性。 我试过了:
On .xaml:
<xctk:WizardPage.NextPage>
<MultiBinding Converter="{StaticResource NextPageSelectionFromPage3}">
<Binding ElementName="yesForBAM" Path="IsChecked" Mode="OneWay"/>
<Binding ElementName="noForBAM" Path="IsChecked" Mode="OneWay"/>
</MultiBinding>
</xctk:WizardPage.NextPage>
On .xaml.cs:
public class NextPageSelectionFromPage3 : IMultiValueConverter
{
public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (values[0] is bool && values[1] is bool)
if ((bool)values[0])
return "Page4";
return "Page5";
}
public object[] ConvertBack(object value, Type[] targetTypes, object parameter, System.Globalization.CultureInfo culture)
{
throw new NotImplementedException();
}
}
如何实现依赖OnNext事件的任何想法?
谢谢!
答案 0 :(得分:2)
转换器的问题是您返回字符串,而NextPage属性的类型为WizardPage。但您可以使用纯XAML中的触发器执行此操作,而无需转换器:
public class NextPageSelectionFromPage3 : IMultiValueConverter
{
public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (values[0] is bool && values[1] is bool)
if ((bool)values[0])
return values[2];
return values[3];
}
public object[] ConvertBack(object value, Type[] targetTypes, object parameter, System.Globalization.CultureInfo culture)
{
throw new NotImplementedException();
}
}
或使用转换器。主要的想法仍然是你应该返回WizardPage,而不是字符串。
<强> C#强>
<xctk:WizardPage.NextPage>
<MultiBinding Converter="{StaticResource NextPageSelectionFromPage3}">
<Binding ElementName="yesForBAM" Path="IsChecked" Mode="OneWay"/>
<Binding ElementName="noForBAM" Path="IsChecked" Mode="OneWay"/>
<Binding ElementName="page4" Mode="OneWay"/>
<Binding ElementName="page5" Mode="OneWay"/>
</MultiBinding>
</xctk:WizardPage.NextPage>
<强> XAML 强>
[{'S_Length': '5.1', 'S_Width': '3.5', 'Predicate': 'I-s', 'P_Width': '0.2', 'P_Length': '1.4'},
{'S_Length': '3.1', 'S_Width': '7.5', 'Predicate': 'I-k', 'P_Width': '4.2', 'P_Length': '9.1'},
{'S_Length': '5.1', 'S_Width': '2.5', 'Predicate': 'I-s', 'P_Width': '0.2', 'P_Length': '4.4'},
{'S_Length': '5.1', 'S_Width': '7.5', 'Predicate': 'I-M', 'P_Width': '0.2', 'P_Length': '1.4'},
{'S_Length': '5.1', 'S_Width': '1.5', 'Predicate': 'I-s', 'P_Width': '0.2', 'P_Length': '1.4'},]