第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何在 XAML 中更改 GraphSharp 頂點(diǎn)的外觀

如何在 XAML 中更改 GraphSharp 頂點(diǎn)的外觀

C#
素胚勾勒不出你 2023-05-14 16:42:50
我在需要更改頂點(diǎn)外觀的項(xiàng)目中使用 GraphSharp。我試圖創(chuàng)建一個(gè)自定義頂點(diǎn)類(lèi),它只有一個(gè)名為 Name 的屬性。然后我創(chuàng)建了一個(gè) ViewModel 類(lèi),我在其中創(chuàng)建了頂點(diǎn)和邊。為了呈現(xiàn)此圖,我為我的自定義頂點(diǎn)創(chuàng)建了一個(gè) DataTemplate。代碼如下:-class MyVertex{    public string Name { get; set; }}class MainViewModel : INotifyPropertyChanged{    public event PropertyChangedEventHandler PropertyChanged;    private void OnPropertyChanged([CallerMemberName]string name = "")    {        if (PropertyChanged == null) return;        PropertyChanged(this, new PropertyChangedEventArgs(name));    }    public IBidirectionalGraph<MyVertex, IEdge<MyVertex>> Graph { get; private set; }    public void CreateGraphToVisualize()    {        var g = new BidirectionalGraph<MyVertex, IEdge<MyVertex>>();        //add the vertices to the graph        MyVertex[] vertices = new MyVertex[5];        for (int i = 0; i < 5; i++)        {            vertices[i] = new MyVertex { Name = "Vertex " + i.ToString() };            g.AddVertex(vertices[i]);        }        //add some edges to the graph        g.AddEdge(new Edge<MyVertex>(vertices[0], vertices[1]));        g.AddEdge(new Edge<MyVertex>(vertices[1], vertices[2]));        g.AddEdge(new Edge<MyVertex>(vertices[2], vertices[3]));        g.AddEdge(new Edge<MyVertex>(vertices[3], vertices[1]));        g.AddEdge(new Edge<MyVertex>(vertices[1], vertices[4]));        Graph = g;    }    public MainViewModel()    {        CreateGraphToVisualize();    }}但是當(dāng)我運(yùn)行它時(shí),我只得到縮放控制但沒(méi)有圖表。所以,我想我做錯(cuò)了什么。然后我找到了這個(gè)并創(chuàng)建了一個(gè)新項(xiàng)目并復(fù)制了那里提供的代碼。我必須根據(jù)自己的判斷來(lái)判斷 DataTemplate 的放置位置,所以我將它放在 Window.Resources 塊中,就像上面的代碼一樣。我還對(duì)代碼進(jìn)行了一些更改以使用通用類(lèi),因?yàn)檎军c(diǎn)中使用的類(lèi)顯然不可用。但最終結(jié)果與我自己的代碼相同。沒(méi)有圖表。我在這里錯(cuò)過(guò)了什么嗎?在此先感謝您的幫助。
查看完整描述

1 回答

?
SMILET

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個(gè)贊

如果沒(méi)有正確的類(lèi)型組合,則無(wú)法實(shí)例化 GraphLayout。


添加如下內(nèi)容:


public class MyGraph : BidirectionalGraph<MyVertex, IEdge<MyVertex>>{}


public class MyGraphLayout : GraphLayout<MyVertex, IEdge<MyVertex>,MyGraph> 

    {

    };

然后使用定義的 MyGraphLayout 代替。


<local:MyGraphLayout x:Name="graphLayout"

                           Graph="{Binding Graph}"

                            LayoutAlgorithmType="ISOM"

                            OverlapRemovalAlgorithmType="FSA"

                            HighlightAlgorithmType="Simple"/>


查看完整回答
反對(duì) 回復(fù) 2023-05-14
  • 1 回答
  • 0 關(guān)注
  • 133 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)