请问有人使用visifire图表么,我有个关于Datapoint以及MultiBinding的问题
如果我简单绑定
<Charts:DataSeries RenderAs="Line" Color="Red" MarkerEnabled="False" ShadowEnabled="False" Bevel="False">
<Charts:DataSeries.DataPoints>
<Charts:DataPoint XValue="{Binding ManualGateABegin}" YValue="{Binding ManualGateALevel}" Enabled="{Binding IsChecked,ElementName=autoCheckBox}"/>
<Charts:DataPoint XValue="{Binding ManualGateAEnd}" YValue="{Binding ManualGateALevel ,Converter={StaticResource aosoc},ConverterParameter=true}" Enabled="{Binding IsChecked,ElementName=autoCheckBox}"/>
</Charts:DataSeries.DataPoints>
</Charts:DataSeries>
得到的结果是正确的
但是我使用MulitBinding绑定时 ,就画不出曲线了
<Charts:DataSeries RenderAs="Line" Color="Red" MarkerEnabled="False" ShadowEnabled="False" Bevel="False">
<Charts:DataSeries.DataPoints>
<Charts:DataPoint >
<Charts:DataPoint.AxisXLabel>
<MultiBinding Converter="{StaticResource gab}">
<Binding Path="IsChecked" ElementName="autoCheckBox" />
<Binding Path="D"/>
<Binding Path="S2"/>
<Binding Path="ManualGateABegin"/>
</MultiBinding>
</Charts:DataPoint.AxisXLabel>
<Charts:DataPoint.YValue>
<MultiBinding Converter="{StaticResource gl}">
<Binding Path="IsChecked" ElementName="autoCheckBox" />
<Binding Path="AutoGateALevel"/>
<Binding Path="ManualGateALevel"/>
</MultiBinding>
</Charts:DataPoint.YValue>
</Charts:DataPoint>
<Charts:DataPoint>
<Charts:DataPoint.AxisXLabel>
<MultiBinding Converter="{StaticResource gae}">
<Binding Path="IsChecked" ElementName="autoCheckBox" />
<Binding Path="D"/>
<Binding Path="S2"/>
<Binding Path="ManualGateAEnd"/>
</MultiBinding>
</Charts:DataPoint.AxisXLabel>
<Charts:DataPoint.YValue>
<MultiBinding Converter="{StaticResource gl}">
<Binding Path="IsChecked" ElementName="autoCheckBox" />
<Binding Path="AutoGateALevel"/>
<Binding Path="ManualGateALevel"/>
</MultiBinding>
</Charts:DataPoint.YValue>
</Charts:DataPoint>
</Charts:DataSeries.DataPoints>
</Charts:DataSeries>
IMultiValueConverter 应该没有问题都有返回值
public class GateABeginForLossenConverter : IMultiValueConverter
{
public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
int result = 0;
bool auto = System.Convert.ToBoolean(values[0]);
if (auto)
result = System.Convert.ToInt32(values[2]);
else
result = System.Convert.ToInt32(values[3]);
return result;
}
我不明白这是为什么,难道visifire datapoint 只能valuebinding,不能multibinding 么
<Charts:DataSeries RenderAs="Line" Color="Red" MarkerEnabled="False" ShadowEnabled="False" Bevel="False">
<Charts:DataSeries.DataPoints>
<Charts:DataPoint XValue="{Binding ManualGateABegin}" YValue="{Binding ManualGateALevel}" Enabled="{Binding IsChecked,ElementName=autoCheckBox}"/>
<Charts:DataPoint XValue="{Binding ManualGateAEnd}" YValue="{Binding ManualGateALevel ,Converter={StaticResource aosoc},ConverterParameter=true}" Enabled="{Binding IsChecked,ElementName=autoCheckBox}"/>
</Charts:DataSeries.DataPoints>
</Charts:DataSeries>
得到的结果是正确的
但是我使用MulitBinding绑定时 ,就画不出曲线了
<Charts:DataSeries RenderAs="Line" Color="Red" MarkerEnabled="False" ShadowEnabled="False" Bevel="False">
<Charts:DataSeries.DataPoints>
<Charts:DataPoint >
<Charts:DataPoint.AxisXLabel>
<MultiBinding Converter="{StaticResource gab}">
<Binding Path="IsChecked" ElementName="autoCheckBox" />
<Binding Path="D"/>
<Binding Path="S2"/>
<Binding Path="ManualGateABegin"/>
</MultiBinding>
</Charts:DataPoint.AxisXLabel>
<Charts:DataPoint.YValue>
<MultiBinding Converter="{StaticResource gl}">
<Binding Path="IsChecked" ElementName="autoCheckBox" />
<Binding Path="AutoGateALevel"/>
<Binding Path="ManualGateALevel"/>
</MultiBinding>
</Charts:DataPoint.YValue>
</Charts:DataPoint>
<Charts:DataPoint>
<Charts:DataPoint.AxisXLabel>
<MultiBinding Converter="{StaticResource gae}">
<Binding Path="IsChecked" ElementName="autoCheckBox" />
<Binding Path="D"/>
<Binding Path="S2"/>
<Binding Path="ManualGateAEnd"/>
</MultiBinding>
</Charts:DataPoint.AxisXLabel>
<Charts:DataPoint.YValue>
<MultiBinding Converter="{StaticResource gl}">
<Binding Path="IsChecked" ElementName="autoCheckBox" />
<Binding Path="AutoGateALevel"/>
<Binding Path="ManualGateALevel"/>
</MultiBinding>
</Charts:DataPoint.YValue>
</Charts:DataPoint>
</Charts:DataSeries.DataPoints>
</Charts:DataSeries>
IMultiValueConverter 应该没有问题都有返回值
public class GateABeginForLossenConverter : IMultiValueConverter
{
public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
int result = 0;
bool auto = System.Convert.ToBoolean(values[0]);
if (auto)
result = System.Convert.ToInt32(values[2]);
else
result = System.Convert.ToInt32(values[3]);
return result;
}
我不明白这是为什么,难道visifire datapoint 只能valuebinding,不能multibinding 么
...全文
相关推荐
在WinForm中使用Visifire实现统计图表功能
简单的说Visifire是一组可视化数据控件集合,主要用在WPF、Sliverlight、WP7应用程序中,只需要编写简单的代码就能轻松实现比较绚丽的图表功能,包括3D效果。本文我们将借助该控件在WinForm中借助xaml来实现统计图表功能。
WPF Visifire.Charts的柱状图、折线图、饼图等等实现
Visifire.Charts的柱状图、折线图、饼图等等实现 1、数据展示 2、3D效果 3、动画效果等等
visifire在WPF中加载_中间空值不显示
visifire在wpf中加载,完整的例子,测试用的,对于不完整的数据源,前台即可不显示缺的值。
国央企创新负责人如何构建多维度的科技资源评价与配置体系?.docx
国央企创新负责人如何构建多维度的科技资源评价与配置体系?
《移动通信系统》全套PPT课件2026(西安电子科技大学)
《移动通信系统》全套PPT课件2026(西安电子科技大学)


