我想顯示一個新的和編輯操作的對話窗體......然而標題,按鈕和其他一些東西應該改變。
我想知道我該如何實現這一點。在構造函數中提供一個枚舉值?像Mode.New或Mode.Edit?有沒有辦法避免編寫像spNewButtons.Visibillity = Collapsed ..等代碼,並將其放入wpf?wpf中的對話窗體改變內容
1
A
回答
0
您可以將可見性與您的mode
屬性綁定,並創建特定的IValueConverter以將模式轉換爲適當的可見性值。即:
<StakPanel Visibility={Binding Mode,Converter={StaticResource myProperConverter}}></StackPanel>
0
通常我的WPF對話框都是在Popup中顯示的所有ContentControl。
我的代碼通常是這樣的:
<Grid Name="RootPanel">
<!-- Other Content -->
<!-- Popup is always last so it gets displayed on top of other contnet -->
<local:PopupPanel
local:PopupPanel.PopupParent="{Binding ElementName=RootPanel}"
local:PopupPanel.IsPopupVisible="{Binding IsPopupVisible}"
local:PopupPanel.PopupEnterKeyCommand="{Binding SaveCommand}"
local:PopupPanel.PopupEscapeKeyCommand="{Binding CancelCommand}">
<DockPanel>
<!-- Header -->
<Label DockPanel.Dock="Top" Content="{Binding PopupHeader}" />
<!-- Buttons -->
<StackPanel DockPanel.Dock="Bottom" Orientation="Horizontal" HorizontalAlignment="Center">
<Button Content="Save" Command="{Binding PopupSaveCommand}" />
<Button Content="Cancel" Command="{Binding PopupCancelCommand}" />
</StackPanel>
<!-- Actual content displayed is determined by DataTemplates -->
<ContentControl Content="{Binding PopupContent}" />
</DockPanel>
</local:PopupPanel>
</Grid>
我刪除了很多的風格,使這個更容易閱讀,但你可以看到它是如何放在一起的總體思路。我的視圖模型通常包含IsPopupVisible
,PopupContent
,並PopupHeader
性質,和命令PopupSaveCommand
和PopupCancelCommand
我在大多數情況下使用my own custom popup,雖然同樣的事情可以用一個WPF彈出來完成。
相關問題
- 1. WPF中的對話窗口
- 2. 更改WPF窗口的內容
- 3. 變化WPF窗口的標籤內容
- 4. 在窗體中更改內容
- 5. 更改對話框中的內容
- 6. 在WPF中禁用頁面內對話框的內容
- 7. 對話窗口沒有包裝內容
- 8. 使Windows窗體中的WPF漸變
- 9. 彈出窗口WPF窗體自定義控件內容
- 10. 窗口加載不改變內容
- 11. WPF中的簡單彈出對話框(覆蓋在窗口內)
- 12. 在WPF中居中對話窗口
- 13. jQuery UI對話框 - 更改打開對話框(Ajax)的內容
- 14. 在wpf窗口中動態更改內容
- 15. 內容對話框不會改變其大小
- 16. 更改wpf中的ListView內容
- 17. WPF窗體切斷一切點下面的所有內容
- 18. WPF窗體和Windows消息傳遞的模態對話框
- 19. Windows窗體中的動態內容
- 20. Windows窗體中的條件對話框
- 21. Windows窗體中的提示對話框
- 22. 能夠在Windows窗體中更改'this'引用的內容
- 23. 更改內容編程(WPF)
- 24. 更改WPF中不同類的XAML對象的內容
- 25. WPF變化按鈕內容
- 26. MFC對話框和窗體
- 27. jquery,從網頁中的ajax調用改變jqueryui對話框的內容
- 28. 窗體窗體 - 在窗體前顯示對話框
- 29. 將窗體的「開關」更改爲WPF
- 30. WPF的「凍結」內容窗口bug