使用WPF在C#中异步加载BitmapImage的最佳方法是什么?似乎存在许多解决方案,但是存在标准模式还是最佳实践?
谢谢!
我是动力贝壳的新手.
我的问题是我有以下格式的文件名:
[ignore-prefix]-[important-middle]-[ignore-suffix]-[name-with-digits]
Run Code Online (Sandbox Code Playgroud)
我需要按照以下规则排序:首先按中间部分,然后按名称按自然顺序排序(即foobar10> foobar2).我不知道前缀值,但我知道分隔符(破折号).
所以我的第一次尝试,自然:
filelist | Sort-Object -property @{Expression=`
{$_.FullName.SubString($_.FullName.IndexOf("-")+1)}}
Run Code Online (Sandbox Code Playgroud)
这有一个问题,后缀影响顺序(ignore-aaa-1ignore-wname)在ignore-aaa-2ignore-aname之前排序,所以:
$filelist | Sort-Object -property @{Expression=`
{$_.FullName.SubString($_.FullName.IndexOf("-")+1,`
$_.FullName.SubString($_.FullName.IndexOf("-")+1).IndexOf("-"))}}
Run Code Online (Sandbox Code Playgroud)
好吧,那个在中间排序,但已经不合时宜了.如果我要添加更糟糕的自然类型.这样做更优雅的方式是什么?
我是WPF的新手,虽然我有一些WinForms的经验.我只想为我动态创建的几个对象添加ContextMenu,但我在VS工具箱中找不到ContextMenu组件.我找到的唯一方法是在运行时创建ContextMenu,如下所示:
ContextMenu pMenu = new ContextMenu();
MenuItem item1 = new MenuItem();
MenuItem item2 = new MenuItem();
//I have about 10 items
//...
item1.Header = "item1";
item1.Click += new RoutedEventHandler(item1_Click);
pMenu.Items.Add(item1);
item2.Header = "item2";
item2.Click += new RoutedEventHandler(item2_Click);
pMenu.Items.Add(item2);
//and so on
Run Code Online (Sandbox Code Playgroud)
但是,在WinForms中,我可以将ContextMenuStrip组件放到我的表单中,并且可以非常快速地定义项目和事件,而无需编写任何代码.在WPF中有可能吗?
我正在构建一个小脚本,它应该将所有.zip文件复制到一个名为的特殊文件夹中 F:\tempzip.
我尝试使用Copy-Item cmdlet,但我没有设法做到这一点.该脚本应该复制此文件夹中的所有文件(递归),即".zip".
这是我正在讨论的脚本的一部分:
get-childitem F:\Work\xxx\xxx\xxx -recurse `
| where {$_.extension -eq ".zip"} `
| copy-item F:\tempzip
Run Code Online (Sandbox Code Playgroud)
我需要添加什么?
目前我有代码Documents在运行时在目录中创建一个文件夹:
using (var context = new Microsoft.SharePoint.Client.ClientContext(sharePointSite))
{
context.Credentials = new Microsoft.SharePoint.Client.SharePointOnlineCredentials(user, password);
Web web = context.Web;
Microsoft.SharePoint.Client.List docs = web.Lists.GetByTitle(<upper level folder>);
docs.EnableFolderCreation = true;
docs.RootFolder.Folders.Add(folderName);
context.ExecuteQuery();
return true;
}
Run Code Online (Sandbox Code Playgroud)
我在使用此代码创建的文件夹中创建子文件夹时遇到了麻烦.因此,如果我想创建一个名为Febunder Documentsthis 的文件夹就可以了.但是,如果我想创建一个Week 2在新文件夹下调用的文件夹Feb.它不会那样做.我收到此错误:
{"List 'Feb' does not exist at site with URL 'https://my.sharepoint.com/sites/labels'."}
我意识到问题可能是docs.RootFolder.Folders.Add(folderName);因为它Feb不是根文件夹,当它查找它时会抛出异常.
所以我希望有人可以帮我解决一些代码,将子文件夹添加到已创建的文件夹中.我使用Visual Stuidos 2010并且无法升级到2012,否则我会.我有Microsoft.Sharepoint.Client可以在VS 2010中引用的2013 dll.
我正在使用VS 2017.我有一个Web服务,我想添加docker支持.当我右键单击并打开菜单添加docker支持时,它显示为灰色.是什么导致它变灰了?如何为我的应用添加docker支持?
*附注我进入解决方案并添加了一个新项目(Web应用程序),当它完成添加新项目后,我可以添加docker支持但仍然无法添加对我的其他Web服务的支持.这两个项目都针对.net Framework 4.5.2
从 C# 8.0 开始,默认情况下标准是不可为 null 的变量。参考1
但对于像这样的泛型:
public static T PerfomIO<T>(Func<T> function, T defaultValue = default)
{
try
{
return function();
}
catch (IOException)
{
}
return defaultValue;
}
Run Code Online (Sandbox Code Playgroud)
如何摆脱当我尝试传递“default”时出现的编译错误“CS8601可能的空引用分配”?
我想在这里支持空值。我不想禁用错误消息。我想按照应有的方式对其进行编程。
我尝试以多种方式添加 Nullable 但没有成功。我尝试 [AllowNull] 但没有成功
使用最新的Azure Data Studio版本:1.32.0
尝试使用访问数据库Azure Active Directory MFA并收到错误:
令牌检索因错误而失败。打开开发者工具查看错误
我该如何解决?
Connection type: Microsoft SQL Server
Authentication type: Azure Active Directory - Universal with MFA support
Run Code Online (Sandbox Code Playgroud)
服务器、帐户和数据库字段均填充有各自的必要信息。
弹出一个浏览器窗口,要求输入用户名/密码,我输入有效的凭据,然后在随后的浏览器中确认身份验证,并附有关闭浏览器窗口的说明。然后,Azure Data Studio 将显示如上所述的错误。
sql-server azure azure-active-directory multi-factor-authentication azure-data-studio
托管PowerShell运行时是否可以将PSObject其转换回原始类型?
例如:
我有一个cmdlet调用WriteObject并推送管道中的ClassXzy集合.当我PowerShell.Invoke从主机端调用时,我检索PSObject带有BaseObject属性的s 集合.铸造BaseObject于ClassXyz失败.
有没有办法将每个属性值映射到其对应的原始对象?
我假设PowerShell以某种方式执行此操作,因为您可以将PSObjects 传递给cmdlet并将它们转换为参数类型.但是怎么样?
我花时间用反射器撕裂了PS组件,但还没有真正确定这种魔法是如何发生的.
有任何想法吗?
编辑:我忘记了一个非常重要的细节.在PSObject我正在测试对,因此是一个远程对象BaseObject类型命名Deserialized.ClassXyz.这就是我看到这种奇怪行为的原因.
是否有任何教程或ac#库可以帮助我完成以下任务
现在步骤1)和4)我已经实现但是找不到一个好的c#库来完成3)和4)
我ffmpeg查了一下库,但找不到一个好的C#包装器来完成这些要求
任何帮助将深表感谢
谢谢
c# ×7
powershell ×3
.net ×2
wpf ×2
.net-4.5 ×1
azure ×1
contextmenu ×1
copy ×1
csom ×1
default ×1
docker ×1
multi-factor-authentication ×1
nullable ×1
parameters ×1
sql-server ×1
video ×1
wrapper ×1