2015-11-16 32 views
-1

我正在構建一個虛擬儀器。控件必須看起來不錯,而且他們必須看起來像其他虛擬樂器。以下是他們需要什麼樣子的例子:換膚控件(WPF/UWP)

http://www.vstskins.com/

基本上,旋鈕,推子,開關,等等,等等

標準Telerik的,Infragistics的控制等等,等等只是不爲此付出代價。我需要控件接受位於頂部的位圖圖像 - 不是用Xaml樣式設計的。我說的是真正的皮膚而不是主題。

有沒有我可以使用的任何控件? PS:在這一點上,我不確定我是否會使用WPF或UWP,但訪問良好的控件會對我的平臺決策產生重大影響。

回答

0

最後,我委託某人構建我需要的控件。他們工作得很好:

https://bitbucket.org/MelbourneDeveloper/vst-controls-.net

有一個開關,旋鈕和推子,一切皆換膚的光柵圖像。

這不是一個開源的庫,但是歡迎所有人都使用這些控件來實現非商業性質的個人項目。

0

首先,關於WPF與UWP,決定應基於您對應用程序使用場景的期望:您是否想要將應用程序發佈到Windows Store?你需要跨多種設備工作嗎?或者你只是想開發一個桌面應用程序? UWP和WPF都有豐富的UI元素庫。你可以根據你自己的關心來選擇。明智的你可以在技術上做同樣的事情。

這裏我將重點放在UWP的解決方案上。我對您的要求的理解是,您需要將控制背景更改爲代碼背後的不同圖像。如果我誤解了,請糾正我。有多種設置圖像源的方法:使用相對URI,使用網絡或本地存儲器中的文件,使用流源等。請參閱MSDN online help。下面是一個非常簡單的示例:

In XAML: 

<StackPanel> 
    <Ellipse Height="200" Width="300"> 
     <Ellipse.Fill> 
      <ImageBrush x:Name="test" ImageSource="Assets/image1.jpg" /> 
     </Ellipse.Fill> 
    </Ellipse> 
    <Button Click="Button_Click">Change Background</Button> 
</StackPanel> 

In C#: 
private void Button_Click(object sender, RoutedEventArgs e) 
{ 
    Uri uri = new Uri("ms-appx:///Assets/hero.jpg"); 
    test.ImageSource = new BitmapImage(uri); 
}