WPF 的另類資源方式 Resources.resx


類似Winform的搞法,可以把資源放到Resources.resx中。

 

1.字符串

打開這個編輯器后,輸入Name和Value就可以了。

CS代碼里面,很簡單的調用:

var title = WpfResource2.Properties.Resources.IDS_TEST_TITLE;

如果要用在XAML中,需要把Access Modifier改為public,原來是Internal。

XAML如下:

1 <Window x:Class="WpfResource2.MainWindow"
2         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
3         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
4         xmlns:res="clr-namespace:WpfResource2.Properties"
5         Title="MainWindow" Height="350" Width="525">
6   <Grid>
7     <TextBlock HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Text="{x:Static res:Resources.IDS_TEST_TITLE}">
8 
9     </TextBlock>

 

2. 圖片資源

放入現有的文件

這個不能在XAML里面直接用了,cs代碼里面:

   var testImg = WpfResource2.Properties.Resources.IC371904;
            MemoryStream memory = new MemoryStream();
            testImg.Save(memory, System.Drawing.Imaging.ImageFormat.Png);
            ImageSourceConverter converter = new ImageSourceConverter();
            ImageSource source = (ImageSource)converter.ConvertFrom(memory);
            img.Source = source;

3. 文件,我嘗試加入了一個文本,好像默認的文件格式也是文本,居然讀出來string了

var content = WpfResource2.Properties.Resources.test;

加入了一個其他格式的文件,讀取到的是byte[]

var content = WpfResource2.Properties.Resources.New_Microsoft_Excel_Worksheet;

4. 還有其他類型,就不在一一實驗了。

不知道MUI,能否通過這種方式來搞。

 Demo

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM