Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我不知道';不理解数据源和DataContextProxy_C#_Xaml_Silverlight 5.0 - Fatal编程技术网

C# 我不知道';不理解数据源和DataContextProxy

C# 我不知道';不理解数据源和DataContextProxy,c#,xaml,silverlight-5.0,C#,Xaml,Silverlight 5.0,我正在尝试创建上下文菜单,我的XAML中已经有了工作按钮,尽管我不知道如何将其转换为C来创建上下文菜单。我不明白DataSource和DataContextProxy是如何工作的,下面是我正在使用的一段代码 <sr:Button Text="Deactivate" Size="Medium" SmallImage="/Fsc.Feenics.Clients.Silverlight2;component/Images/16/deactivate.png" Command="{Binding

我正在尝试创建上下文菜单,我的XAML中已经有了工作按钮,尽管我不知道如何将其转换为C来创建上下文菜单。我不明白DataSource和DataContextProxy是如何工作的,下面是我正在使用的一段代码

<sr:Button Text="Deactivate" Size="Medium" SmallImage="/Fsc.Feenics.Clients.Silverlight2;component/Images/16/deactivate.png" Command="{Binding Path=DataSource.DeactivateCardCommand, Source={StaticResource DataContextProxy}}" CommandParameter="{Binding}" Visibility="{Binding Active, Converter={StaticResource VisibleIfTrue}}" />

这是我试图将它翻译成C#作为我的上下文菜单

  contextMenu.Items.Add(new MenuItem { Header = "Deactivate", Command = new RelayCommand<Guid>((x) => localContext.DeactivateCard(x)), CommandParameter = objectInfo.Id });
contextMenu.Items.Add(new MenuItem{Header=“Deactivate”,Command=new RelayCommand((x)=>localContext.DeactivateCard(x)),CommandParameter=objectInfo.Id});

我不确定将DataSource/DataContextProxy放在我的C#中的何处,如果有人能给我任何建议或解释它的工作原理,我会非常高兴,

我不确定您是否理解xaml,所以我将从一开始就解释

button命令绑定到一个类StaticResource对象,该对象有一个x:key“DataConextProxy”

该对象是一个公开属性的类:DataSource

数据源对象是一个公开命令的类:DeactivateCardCommand

从DataContextProxy的名称来看,我假设是关于

基本上只需使用相同的绑定命令、相同的绑定路径创建菜单项,就可以了