2015-04-02 22 views
0

我想編程動態細節視圖。就像用戶點擊一個項目,然後他看到細節視圖。現在他看到了所有的值,但是當他只想看到一些值時,他在該視圖中單擊一個配置按鈕,打開第二個視圖,他可以選擇和取消選擇所有類型的值。就像他不想看到描述一樣,他在第二個視圖中取消選擇它,並且在第一個視圖中不再顯示它。動態細節視圖C#Xaml

我實現這樣的東西的唯一方法是編寫一個函數來生成第一個視圖。該視圖將是一個UI元素。然後將其返回到Windows中UI元素被設置爲窗口上元素的子元素。但我認爲這不是一個好方法。你如何解決這個問題? 感謝每一個提示:)

回答

0

如果我沒有理解好你想

列表 - >詳細信息 - > MoreDetails /編輯

根據您所創建的內容平臺是有點不同,但這個想法是以下:

<ItemsControl ... x:Name="ItemsList" ItemsSource="{Binding}"> 
    <ItemsControl.ItemTemplate> 
     <DataTemplate> 
    <Grid> 
       <Interactivity:Interaction.Behaviors> 
       <core:EventTriggerBehavior EventName="Tapped"> 
         <core:InvokeCommandAction 
     Command="{Binding Datacontext.ShowItemDetails, ElementName=ItemsList}" CommandParameter="{Binding}"/> 
     </core:EventTriggerBehavior> 
    </Interactivity:Interaction.Behaviors> 
      </Grid> 
    </DataTemplate> 
</ItemsControl> 

現在,當你點擊的網格可以顯示與細節PopupControl和DataContext的:

public Command<ItemClass> ShowPopup 
{ 
get 
    { 
    return new Command<ItemClass>((i)=> 
    { 
    //Create the Popup 
    }); 
    } 
} 

如果你不使用MVVM,你可以在後面的代碼中添加命令,並將其放置在頁面構造器中this.DataContext = this;並在那裏放置前一個命令。

現在創建彈出窗口的內容的控制,該屬性綁定到該項目的細節,現在在控制命令添加其他行爲,取消隱藏的編輯模式的詳細信息模式

0

你的控件可以爲每個細節項設置屬性bool ItemXIsVisible,它綁定到配置視圖中的複選框,並且在詳細視圖中指向X控件的IsVisible屬性?