一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

Silverlight中使用遞歸構(gòu)造關(guān)系圖

  這兩天遇到一個(gè)問(wèn)題,項(xiàng)目中需要在silverlight中使用連接圖的方式來(lái)顯示任務(wù)之間的關(guān)系,總體有父子和平行兩種,昨天在改同事的代碼,一直出問(wèn)題,索性晚上寫了一下實(shí)現(xiàn)方法。

  需求

  有一個(gè)List對(duì)象中存了若干個(gè)Task,這些Task對(duì)象通過(guò)ParentID屬性進(jìn)行關(guān)聯(lián),現(xiàn)在要求將這個(gè)List中的任務(wù)使用圖的方式形成如父子關(guān)系和平行關(guān)系的圖示例如下圖:

image

  實(shí)現(xiàn)方法思考

  剛開始接到這個(gè)任務(wù)我就想著遞歸應(yīng)該可以搞定了,但是仔細(xì)考慮才發(fā)現(xiàn)每個(gè)任務(wù)的子任務(wù)需要在一定區(qū)域內(nèi)才行,需要計(jì)算子級(jí)和子級(jí)之間的距離,如果使用遞歸,例如上圖的元素“12”的位置就沒(méi)有辦法很好確定了。

  我決定將途中的節(jié)點(diǎn)抽象為一個(gè)類,這個(gè)類至少應(yīng)該含有上邊界top,左邊屆left及節(jié)點(diǎn)的名稱等屬性,然后從這個(gè)List對(duì)象中構(gòu)造出每個(gè)節(jié)點(diǎn)的屬性。

  實(shí)現(xiàn)步驟

  1,首先我們?yōu)閳D模擬一個(gè)數(shù)據(jù)源,注意其中的任務(wù)是通過(guò)ParentID關(guān)聯(lián)的。

代碼private static List<Task> listTask; 
        
public MainPage() 
        { 
            InitializeComponent(); 
            listTask 
= new List<Task>(); 
            listTask.Add(
new Task() { ID = 1, ParentID = 0, Name = "1" }); 
            listTask.Add(
new Task() { ID = 2, ParentID = 1, Name = "11" }); 
            listTask.Add(
new Task() { ID = 3, ParentID = 1, Name = "12" }); 
            listTask.Add(
new Task() { ID = 4, ParentID = 2, Name = "21" }); 
            listTask.Add(
new Task() { ID = 5, ParentID = 2, Name = "22" }); 
            listTask.Add(
new Task() { ID = 6, ParentID = 3, Name = "31" }); 
            listTask.Add(
new Task() { ID = 7, ParentID = 3, Name = "32" }); 
            listTask.Add(
new Task() { ID = 8, ParentID = 3, Name = "33" }); 
            listTask.Add(
new Task() { ID = 9, ParentID = 4, Name = "42" }); 
            listTask.Add(
new Task() { ID = 10, ParentID =4, Name = "42" }); 
            listTask.Add(
new Task() { ID = 11, ParentID =3, Name = "34" }); 
            listTask.Add(
new Task() { ID = 12, ParentID = 5, Name = "51" }); 
            listTask.Add(
new Task() { ID = 13, ParentID = 8, Name = "81" }); 
            
this.Loaded += new RoutedEventHandler(MainPage_Loaded); 
        }

NET技術(shù)Silverlight中使用遞歸構(gòu)造關(guān)系圖,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 欧美成人综合视频 | 国产黄色自拍视频 | 99在线精品国产不卡在线观看 | 欧美人与禽交视频在线观看 | 91精品国产三级在线观看 | 久久伊人精品热在75 | 在线国产视频 | 日韩一区二区三区视频 | 99午夜视频 | 乱码一区二区三区完整视频 | 特黄毛片 | 欧美黑人巨大日本人又爽又色 | 国产香蕉久久精品综合网 | 亚洲国产精品久久久天堂麻豆 | 五月综合激情网 | 青草悠悠视频在线观看 | 国产51社区精品视频资源 | 亚洲香蕉在线视频 | 日本视频www色变态 日本视频网站在线www色 | 成人免费观看www视频 | 成人国产第一区在线观看 | 日韩中文字幕在线播放 | 精品自拍视频在线观看 | 第一页综合 | 伊人婷婷 | 精品小视频 | 久热中文字幕在线精品免费 | 欧美黄视频网站 | 久草视频一区 | 日本免费一区二区三区看片 | 黄色网址视频在线观看 | 国语精品视频在线观看不卡 | 道区二区三区四区 | 成人免费在线观看视频 | 99视频精品全部 在线 | 久久国产精品一区二区三区 | 五月激情视频 | 亚洲免费一区二区 | 精品久久九九 | 国产亚洲精品中文带字幕21页 | 999国内精品永久免费视频 |