2015-11-16 30 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); 
}