2010-10-18 27 views
0

我想使用Silverlight DataGrid顯示註釋。當他們在網格中選擇一個項目時,我將在屏幕的不同區域顯示註釋。但是,我希望還可以執行與Outlook自動預覽類似的操作,其中該註釋的前幾行顯示在網格中每行的下方。Silverlight DataGrid - 模擬Outlook自動預覽

用Silverlight DataGrid完成此操作的最佳方法是什麼?或者,是否有更適合的替代第三方工具?

這是Silverlight 4,如果它有幫助。

+0

標準Grid和GridSplitter有什麼問題? – 2010-10-18 17:03:11

+0

我無法想象如何通過它獲得AutoPreview效果。如果你可以進一步解釋,也許我會得到它。我指的是網格中的每一行都有一個下面的部分,電子郵件的前幾行顯示爲藍色。我*不*指的是選擇時顯示完整電子郵件的視圖窗格。 – RationalGeek 2010-10-19 00:31:13

回答

0

我回答我自己的問題,因爲我最終搞清楚了。我在混合中刪除了一個DataGrid,並編輯了RowStyle模板的副本。有一部分模板可以在其中找到該控件:

<sdk:DataGridDetailsPresenter x:Name="DetailsPresenter" .../> 

該行的所有內容都在該控件內呈現。最初,該控件在其中還具有網格行和列屬性。我將該控件包圍在一個StackPanel中,並將網格屬性移動到新的StackPanel中。然後,在該控件之後,我使用TextWrapping =「Wrap」和TextTrimming =「WordEllipsis」創建了一個TextBlock控件。我也給了它正確的顏色,字體,高度,邊距等,使它看起來正確。

最後它看起來幾乎完全像Outlook AutoPreview。

0

是不是可以簡單地更改DataGrid行的內容,使其不僅包含註釋的「標題」,還包括綁定之前節點的前幾行內容?

p.s.這假設你想要全部 DataGrid中的行顯示註釋的前幾行,而不僅僅是被選中的行(這對我來說更有意義,因爲一旦它被選中,你已經顯示了整個在一個單獨的控制節點的內容)

+0

我不知道這是否可能。我想這就是我要問的。你能提供更多關於你的建議的細節嗎? – RationalGeek 2010-10-18 20:12:28

+0

你能提供一個如何填充DataGrid的例子嗎?你對它有什麼約束? – vlad 2010-10-18 20:23:31