轉(zhuǎn)帖|其它|編輯:郝浩|2011-01-31 13:47:13.000|閱讀 2992 次
概述:WPF的界面元素都是xaml標(biāo)簽,當(dāng)然也是xml標(biāo)簽,可以將ui文檔放到一個(gè)xml文件中,然后動(dòng)態(tài)的去讀取xml文件中xaml標(biāo)簽,然后現(xiàn)在到wpf的window中。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
WPF的界面元素都是xaml標(biāo)簽,當(dāng)然也是xml標(biāo)簽,可以將ui文檔放到一個(gè)xml文件中,然后動(dòng)態(tài)的去讀取xml文件中xaml標(biāo)簽,然后現(xiàn)在到wpf的window中。
方法
1、先創(chuàng)建一個(gè)xml文件,里面放xaml的標(biāo)簽元素
需要注意的是是Grid元素的xmln標(biāo)簽一定不能少,而且要將xml文件作“資源”進(jìn)行設(shè)置
<Grid xmlns="//schemas.microsoft.com/winfx/2006/xaml/presentation">
<Border Margin="40,59,60,141" Name="border1" Background="Cyan" BorderBrush="Beige" >
<Button Name="b1" Content="test" Width="80" Height="50" ></Button>
</Border>
</Grid>
2、在wpf的方法中添加這樣的讀取代碼
using System.Windows.Markup;
Uri uri = new Uri("pack://application:,,,/test.xml");//加載資源,注意格式,最后有個(gè)/
Stream s = App.GetResourceStream(uri).Stream;//讀取資源流
FrameworkElement fe = XamlReader.Load(s) as FrameworkElement;
Content = fe;//將從xml讀取的元素賦值給窗體的Content
這樣就可以顯示了你在xml中設(shè)置的ui元素了
資源添加到wpf的window中以后,就可以使用findname方法來(lái)找到某些元素,然后進(jìn)行其他附加操作。
特2:
也可以使用window標(biāo)簽作為xml文件的元素標(biāo)簽,這意味著我們就是要生成一個(gè)window對(duì)象。
<window xmlns="//schemas.microsoft.com/winfx/2006/xaml/presentation">
<Grid>
<Border Margin="40,59,60,141" Name="border1" Background="Cyan" BorderBrush="Beige" >
<Button Name="b1" Content="test" Width="80" Height="50" ></Button>
</Border>
</Grid>
</window>
在app的代碼這樣寫(xiě),在啟動(dòng)方法中
Uri uri = new Uri("pack://application:,,,/test.xml");
Stream s = App.GetResourceStream(uri).Stream;
window w = XamlReader.Load(s) as window;
window.addHander();//添加某些按鈕或者其他控件的事件發(fā)方法
app.run(w);
這樣就可以從xml文檔中裝載一個(gè)window元素對(duì)象
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@ke049m.cn
文章轉(zhuǎn)載自:網(wǎng)絡(luò)轉(zhuǎn)載