2013-07-24 48 views
0

如何展開加載子行的超級行的第一行? here is the way i want ultrawingrid to look like 如何展開具有UltraWinGrid中的Child行的第一行..?

在這個ultrawridrid中有多個行有子行,但我想展開只有第一行有像圖中所示的子行。使用C#.Net

我知道,使用擴展所有的方法我可以展開所有的行。

而且我知道,ExpandAncestors()將擴大,我想行(提供我需要選擇一個行作爲孩子)

我怎樣才能實現這一目標?在此先感謝...

回答

3

我不確定是否有更好的方法,但正如你所知,UltraWinGrid的不同級別被稱爲Bands,並且DisplayLayout屬性中提供了該Bands的集合。

的想法是枚舉排在頂層帶和數據源的只有這個樂隊的第一行設置後,將擴展屬性爲true。

// Returns a DataSet with two tables linked with a DataRelation 
DataSet ds = GetDataSource; 
grdMyData.DataSource = ds; 

// Now loop on the rows of the first band 
foreach (UltraGridRow row in grdMyData.DisplayLayout.Bands[0].GetRowEnumerator(GridRowType.DataRow)) 
{ 
    // If the row has child rows, then set the its Expanded property 
    // to true and exits immediately the loop 
    if (row.HasChild()) 
    { 
     row.Expanded = true; 
     break; 
    } 
} 
+1

嗨史蒂夫..感謝您的答覆。在嘗試你的代碼之後,沒有行被展開,我認爲它因爲GetRowEnumerator(GridRowType.DataRow))會給出與Band [0]相關的完整行。 – Jpaul

+0

我看到,並非所有的行都有孩子。那麼,我現在不能嘗試它,但HasChild()(有四個重載)這種方法似乎是工作的正確工具。查看更新的答案 – Steve

+0

謝謝..我得到了我想要的.. – Jpaul

相關問題