2

listView の共通コントロールを作成しました。listView の各項目の内容を変更したいと考えています。DisplayMemberPath のようなものですが、どの画面でも同じではない 2 つの値を送信する必要があります。

<ListView.ItemTemplate>
    <DataTemplate>
       <Grid> 
         <TextBlock Text="{Binding Property1}"/>
         <TextBlock Text="{Binding Setter2}"/>
       </Grid>
     </DataTemplate>
</ListView.ItemTemplate>

そして次の画面で私はこのようなものが欲しい

        <TextBlock Text="{Binding SuperNewProperty}"/>
         <TextBlock Text="{Binding Setter2xyz}"/>

次のような変数バインディングを持つコントロールを作成するにはどうすればよいですか。

<TextBlock Text="{Binding {Binding MySpecificValue}"/>

これは明らかにばかげたことですが、私がやりたいことを最もよく説明しています。

完了するには:

OK、いくつかのモジュール Employes.xaml where call、itemSource および prop1、prop2 としていくつかの依存関係プロパティを持つコントロールがあります (表示メンバー パスのように、両方を使用したい)。

ItemSource は DB の IEnumerable であり、employeName、employNumber の 2 つの列が含まれています。これは listView に表示されます。

<control:listViewMyControl itemSource ="{Binding employes}" prop1="employeName" prop2="employNumber" />

しかし、モジュールCities.xamlがある場合、prop1、prop2を別の列名、cityName、cityRankなどにバインドする必要があります

<control:listViewMyControl itemSource ="{Binding cities}" prop1="cityName" prop2="cityRank " />

リストビューの2つの異なるタイプのリストビューアイテムを表示したいときに問題が発生します

   // my user control listViewMyControl 
    <ListView x:Name="listView1">
    <ListView.ItemTemplate>
        <DataTemplate>
           <Grid> 
             <TextBlock Text="{Binding employeName}"/>
             <TextBlock Text="{Binding employeNumber}"/>

            <TextBlock Text="{Binding cityName}"/>
             <TextBlock Text="{Binding cityRank}"/>

   // but i want only something like display member path for two labels, input modules may be more (employes, cities, cars, stations, .....) something like this
    <TextBlock Text="{Binding {Binding MySpecificValue}"/>
    <TextBlock Text="{Binding {Binding MySpecificValue2}"/> 
           </Grid>
         </DataTemplate>
    </ListView.ItemTemplate>
    </ListView>

前もって感謝します。

4

0 に答える 0