我的UWP c#项目中有一个图像,它是带有白色前景的透明png。我现在想将白色从此png图像更改为另一种颜色(如蓝色)。
示例(请注意,彩色图像没有透明的背景。这是由于我使用的不好的图像处理软件引起的,并且演示了白色的变化。最终的背景应该是透明的)。
我记得,这是可以统一实现的,现在我想现在在uwp-app中做到这一点。我曾考虑过使用Lumia ImagingSDK或Composition API,但不知道热衷于使用它们。
我是Windows Phone 8.1的XAML的新手,并且遇到了一些麻烦
到目前为止我的工作看起来像这样:

和守则(请纠正我,如果有重大缺陷):
<Border CornerRadius="15" Background="#FF595656" Margin="0" Grid.ColumnSpan="2" Height="80">
<StackPanel Orientation="Horizontal">
<StackPanel Width="20" HorizontalAlignment="Left" VerticalAlignment="Top" />
<StackPanel HorizontalAlignment="Left" Height="80" Margin="0,0,0,0" VerticalAlignment="Center" Width="51">
<Image HorizontalAlignment="Left" Height="51" Margin="0,15,0,0" Width="51" Source="Assets/fish.png" Stretch="Fill" RenderTransformOrigin="2.307,0.881" VerticalAlignment="Center"/>
</StackPanel>
<StackPanel Width="10" HorizontalAlignment="Left" VerticalAlignment="Top" />
<StackPanel HorizontalAlignment="Left" Height="80" Margin="0" VerticalAlignment="Top" Width="310">
<TextBlock HorizontalAlignment="Left" Height="25" Margin="0,20,0,0" TextWrapping="Wrap" Text="Entry 1" Width="310" VerticalAlignment="Top" FontSize="18" Foreground="Black" FontWeight="Bold"/>
<TextBlock HorizontalAlignment="Left" Height="17" Margin="0" TextWrapping="Wrap" Text="Short description Entry 1" Width="310" VerticalAlignment="Top" Foreground="#FF0097FF"/>
</StackPanel>
</StackPanel>
</Border>
Run Code Online (Sandbox Code Playgroud)
此代码稍后将包含在ListBox带有Image,Entry 1和绑定的简短描述的内部:
<ListBox x:Name="ListBox1" …Run Code Online (Sandbox Code Playgroud) 我想自动化以下过程:
从向量中获取最小值和最大值,并在给定特定步长的情况下定义从最小值到最大值的步长。向量中的每个值现在都被分配给一个label(因子级别),它落入这个范围,例如"20-30"当值为 时27.45。
目前我正在使用这个 for 循环
for (label_willi_counter in 1:length(willi)) {
if(willi[label_willi_counter] < 10)
label_willi = c(label_willi, "0 - 10")
else if(willi[label_willi_counter] < 20)
label_willi = c(label_willi, "10 - 20")
else if(willi[label_willi_counter] < 30)
label_willi = c(label_willi, "50 - 30")
else if(willi[label_willi_counter] < 40)
label_willi = c(label_willi, "30 - 40")
else if(willi[label_willi_counter] < 50)
label_willi = c(label_willi, "40 - 50")
else if(willi[label_willi_counter] < 60)
label_willi = c(label_willi, "50 - 60")
else if(willi[label_willi_counter] < 70) …Run Code Online (Sandbox Code Playgroud) 我最近更新了我自12月/ 1月以来没有工作的旧c#UWP项目.所以我决定打开它并更新所有打包的via nuget.
我跑VS2017 v15.3.1和nuget v4.3.0.
所以我通过nuget更新了所有软件包,但无法更新软件包Microsoft.EntityFrameworkCore.Tools:
恢复D:\ Programming\C#\ Projekts VS2017\myUWPproject\myUWPproject\myUWPproject.csproj ...的程序包GET https://api.nuget.org/v3-flatcontainer/microsoft.identitymodel.clients.activedirectory/index.json OK https://api.nuget.org/v3-flatcontainer/microsoft.identitymodel.clients.activedirectory/index.json 462ms Microsoft.OneDriveSDK.Authentication 1.0.10未提供依赖关系的包含性下限Microsoft.IdentityModel.Clients.ActiveDirectory (> 2.22.0 && <3.0.0).Microsoft.IdentityModel.Clients.ActiveDirectory 2.22.302111727的近似最佳匹配已解决.软件包Microsoft.EntityFrameworkCore.Tools 2.0.0与uap10.0.14393(UAP,Version = v10.0.14393)不兼容.包Microsoft.EntityFrameworkCore.Tools 2.0.0支持:netstandard2.0(.NETStandard,Version = v2.0)包Microsoft.EntityFrameworkCore.Tools 2.0.0与uap10.0.14393(UAP,Version = v10.0.14393)/不兼容win10臂.包Microsoft.EntityFrameworkCore.Tools 2.0.0支持:netstandard2.0(.NETStandard,Version = v2.0)包Microsoft.EntityFrameworkCore.Tools 2.0.0与uap10.0.14393(UAP,Version = v10.0.14393)/不兼容win10-臂AOT.包Microsoft.EntityFrameworkCore.Tools 2.0.0支持:netstandard2.0(.NETStandard,Version = v2.0)包Microsoft.EntityFrameworkCore.Tools 2.0.0与uap10.0.14393(UAP,Version = v10.0.14393)/不兼容win10-64.包Microsoft.EntityFrameworkCore.Tools 2.0.0支持:netstandard2.0(.NETStandard,Version = v2.0)包Microsoft.EntityFrameworkCore.Tools 2.0.0与uap10.0.14393(UAP,Version = v10.0.14393)/不兼容win10-x64的AOT.包Microsoft.EntityFrameworkCore.Tools 2.0.0支持:netstandard2.0(.NETStandard,Version = v2.0)包Microsoft.EntityFrameworkCore.Tools 2.0.0与uap10.0.14393(UAP,Version = v10.0.14393)/不兼容win10-86.包Microsoft.EntityFrameworkCore.Tools 2.0.0支持:netstandard2.0(.NETStandard,Version = v2.0)包Microsoft.EntityFrameworkCore.Tools 2.0.0与uap10.0.14393(UAP,Version = v10.0.14393)/不兼容win10-x86的AOT.软件包Microsoft.EntityFrameworkCore.Tools 2.0.0支持:netstandard2.0(.NETStandard,Version = v2.0)软件包恢复失败.回滚'myUWPproject'的包更改.经过时间:00:00:02.1287297 ==========完成==========
所以我从项目中删除它,以防万一我也删除了文件夹C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\Tools,但没有运气.当我尝试重新安装它时,我得到了输出.
首先我认为这可能是因为 …
我无法为这个看似微不足道的任务找到解决方案,这让我很烦恼。
我想将任意长字符串(例如 5000 个字符)哈希为一个小数字,例如 6 位数字。
这个哈希值应该是确定性的,并且它运行在哪种架构或系统上并不重要(这是棘手的部分)。
我在UWP Apps中遇到CommandBar问题(见下图)
在这里,您可以看到CompactMode中的CommandBar和带有Text"Title" 的TextBlock.当我现在展开(点击三个点)CommandBar时,TextBlock消失,如下所示:
当我关闭扩展的CommandBar时,它会从图片1返回状态,显示TextBlock.
代码:
<Grid x:Name="cmdBarDesktop" Grid.Row="0">
<CommandBar ClosedDisplayMode="Compact" IsOpen="True" IsSticky="True">
<CommandBar.PrimaryCommands>
<AppBarButton x:Name="AppBarListDesktop" Icon="List" Label="Listenform" Grid.Column="1" Click="AppBarList_Click" />
<AppBarButton x:Uid="AppBarAdd" Icon="Add" Label="Hinzufügen" Grid.Column="3" Click="AppBarAdd_Click" />
</CommandBar.PrimaryCommands>
</CommandBar>
</Grid>
<Grid x:Name="titleGrid" VerticalAlignment="Center" Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="10" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<TextBlock Text="Hausaufgaben" Style="{StaticResource TitleTextBlockStyle}" Grid.Column="1" VerticalAlignment="Center" />
</Grid>
Run Code Online (Sandbox Code Playgroud) 有button_play和button_pause.我想把它们组合成一个按钮.第一次按下歌曲时,歌曲开始播放.第二次按 - 暂停.在第三次按下时,播放继续.我做不到.
请告诉我,我如何将它们结合起来.
private void button_play_Click(object sender, EventArgs e)
{
if ((list_catalog.Items.Count != 0) && (list_catalog.SelectedIndex != -1))
{
string current = Vars.Files[list_catalog.SelectedIndex];
Vars.CurrentTrackNumber = list_catalog.SelectedIndex;
BassLike.Play(current, BassLike.Volume);
label_time1.Text = TimeSpan.FromSeconds(BassLike.GetPosOfStream(BassLike.Stream)).ToString();
label_time2.Text = TimeSpan.FromSeconds(BassLike.GetTimeOfStream(BassLike.Stream)).ToString();
xrewind.Maximum = BassLike.GetTimeOfStream(BassLike.Stream);
xrewind.Value = BassLike.GetPosOfStream(BassLike.Stream);
timer1.Enabled = true;
}
}
private void button_pause_Click(object sender, EventArgs e)
{
BassLike.Pause();
}
Run Code Online (Sandbox Code Playgroud) c# ×5
xaml ×2
bass ×1
bass.dll ×1
commandbar ×1
hash ×1
imaging ×1
labeling ×1
listboxitem ×1
nuget ×1
overlapping ×1
r ×1
string ×1
uwp ×1
winforms ×1