2010-06-04 78 views
0

我正在使用自定義複選框,並試圖將內容設置爲WPF視圖框。問題是,簡而言之,什麼都不顯示。複選框出現並工作,但它沒有內容。這是我想要做的示例代碼(而不是實際代碼)。WPF複選框將不會顯示UIElement作爲其內容

MyCheckbox myCheckbox = new MyCheckbox(); 

Viewbox viewbox = new Viewbox(); 
viewbox.Height = 20; 
viewbox.Width = 20; 

Label label = new Label(); 
label.Content = "Test"; 

viewbox.Child = label; 
myCheckbox.Content = viewbox; 

內容屬性接受一個對象,所以沒有問題將其設置爲視框,並且ContentPresenter可以顯示的UIElement。我認爲ContentPresenter可能無法顯示Viewbox中包含的Label,因此我創建了一些測試代碼,將複選框的內容設置爲簡單的直方圖。依然沒有。

任何想法或想法?謝謝你的幫助!

哦 - 將Content屬性設置爲一個字符串的作品。

回答

1

您可能需要發佈自定義CheckBox的相關XAML。檢查ControlTemplate有一個ContentPresenter,如果你有一個ContentTemplate它不會干擾。 你可以看到一個例子模板here.

如果你只是想改變CheckBox的樣子,你可以重新模板的標準CheckBox無需編寫自定義類。

+0

感謝您的幫助。我沒有編寫自定義複選框,我不知道他們已經刪除了ContentPresenter,並用TextBlock替換它。我懷疑我是否會考慮檢查。再次感謝! – Quentamia 2010-06-04 18:34:30