开发者

Can I change the binding source to another source in XAML?

开发者 https://www.devze.com 2022-12-26 03:14 出处:网络
I want to change the source in XAML to another object source. For example: I have a Listview, part of a window bound to a \"Model A\", it has many properties, but one is called \"Total\". This prope

I want to change the source in XAML to another object source. For example:

  • I have a Listview, part of a window bound to a "Model A", it has many properties, but one is called "Total". This property is not shown on the View
  • Each ListviewItem has its own source (ItemsSource), BUT, one of the fields should show "Total" from "Model A"

Caveat: I am implementing MVVM, so the "Model A" is assigned to the Window 开发者_运维技巧as a VM DataSource, XAML knows nothing about it.

View.DataSource = MyViewModel (that contains "Model A")

So, in my perfect world the XAML should look like this:

<GridViewColumn Header="Total" Width="150">
   <GridViewColumn.CellTemplate>
      <DataTemplate>
         <Label Content="{Binding Source=<The source of WINDOW> Path=Total}"/>
      </DataTemplate>
    </GridViewColumn.CellTemplate>
 </GridViewColumn>

I have tried RelativeSource but that points me to the XAML object, I want the source of it, is it possible? Can someone point me in the right direction?


<Label Content="{Binding RelativeSource={RelativeSource FindAncestor, 
                         AncestorType={x:Type Window}}, Path=Total}"/>

WPF Binding Cheat Sheet

0

精彩评论

暂无评论...
验证码 换一张
取 消