Xaml 如何从MVVM viewmodel访问x:Name
我想将Microchart数据从viewmodel绑定到xamarin prism应用程序中的视图 我尝试从后端c通过访问x:Name进行绑定,其工作正常。但我希望将所有逻辑保留在viewmodel中。是否有任何方法从viewmodel访问此图表元素 我的xaml代码Xaml 如何从MVVM viewmodel访问x:Name,xaml,mvvm,xamarin.forms,prism,Xaml,Mvvm,Xamarin.forms,Prism,我想将Microchart数据从viewmodel绑定到xamarin prism应用程序中的视图 我尝试从后端c通过访问x:Name进行绑定,其工作正常。但我希望将所有逻辑保留在viewmodel中。是否有任何方法从viewmodel访问此图表元素 我的xaml代码 <StackLayout Orientation="Vertical" > <StackLayout Padding="5,3,5,3" >
<StackLayout Orientation="Vertical" >
<StackLayout Padding="5,3,5,3" >
<microcharts:ChartView HeightRequest="300" WidthRequest="200" x:Name="chartView"/>
</StackLayout>
<StackLayout Padding="5,3,5,3" >
<microcharts:ChartView HeightRequest="300" WidthRequest="200" x:Name="chartView1"/>
</StackLayout>
<StackLayout Padding="5,3,5,3">
<microcharts:ChartView HeightRequest="300" WidthRequest="200" x:Name="chartView2"/>
</StackLayout>
</StackLayout>
和我的后端c代码
var entries = new List<ChartEntry>
{
new ChartEntry(200)
{
Label = "January",
ValueLabel = "200",
Color = SKColor.Parse("#266489")
},
new ChartEntry(400)
{
Label = "February",
ValueLabel = "400",
Color = SKColor.Parse("#68B9C0")
},
new ChartEntry(100)
{
Label = "March",
ValueLabel = "100",
Color = SKColor.Parse("#90D585")
}
};
var chart = new BarChart() { Entries = entries };
var chart1 = new BarChart() { Entries = entries };
var chart2 = new PointChart() { Entries = entries };
// or: var chart = new LineChart() { Entries = entries };
// or: var chart = new DonutChart() { Entries = entries };
// or: var chart = new RadialGaugeChart() { Entries = entries };
// or: var chart = new RadarChart() { Entries = entries };
this.chartView.Chart = chart;
this.chartView1.Chart = chart1;
this.chartView2.Chart = chart2;
我想将此后端c代码移动到viewmodel。我不知道如何将此图表数据绑定到viewmodel中进行查看。谢谢你不能这样做
您可以使用BindingContext访问xml端
<microcharts:ChartView HeightRequest="300" WidthRequest="200" ValueLabel="{Binding your_prop}" x:Name="chartView"/>
据我所知,您不能这样做。请对图表属性使用绑定。