假设我在URL http:// webapp:1234/Lists/TestList上提供了一个SharePoint列表.
在代码中,我只能访问相应的SPList-Instance.如何SPList以编程方式获取此-Instance 的URL ?
SPList类缺少URL属性或类似的东西......
有没有办法干净地终止System.Windows.Forms.Application.Run()从另一个线程调用发出的消息循环?
Thread messageLoop = new Thread(() => Application.Run());
messageLoop.SetApartmentState(ApartmentState.STA);
messageLoop.Start();
//How to terminate thread like on Application.ExitThread() without calling Thread.Abort()?
Run Code Online (Sandbox Code Playgroud)
提前致谢!
我必须编写一个C#API来注册全局热键.要接收WM_HOTKEY消息,我使用a System.Windows.Forms.NativeWindow并运行自己的消息循环System.Windows.Forms.Application.Run(ApplicationContext).当用户想要注册一个热键时,他必须运行一个叫RegisterHotkey()停止消息循环的方法System.Windows.Forms.ApplicationContext.ExitThread(),将热键注册到RegisterHotKey()(P/Invoke)函数并再次启动消息循环.这是必需的,因为RegisterHotKey()必须在创建窗口的同一个线程中调用,该窗口必须在运行消息循环的同一个线程中实例化.
问题是,如果用户RegisterHotkey()在启动正在运行消息循环的线程后不久调用该方法,则会在ApplicationContext.ExitThread()之前调用Application.Run(ApplicationContext),因此应用程序将无限期地阻塞.有人知道等待消息循环启动的方法吗?
提前致谢!
鉴于以下要求:
是否有可用于WPF的内置或第三方验证框架,或者我必须自己编写一个?我尝试过IDataErrorInfo,但是在验证嵌套视图模型或整个集合时失败了.
谢谢!
在我的PowerShell脚本中,我想获得用于创建SPWeb的SPWebTemplate.在SPWeb实例中,可以访问属性WebTemplate和WebTemplateId,但它们都不能唯一地标识SPWebTemplate.
例如,如果已使用SPWebTemplate"STS#0"创建SPWeb,则WebTemplate将包含"STS",WebTemplateId将为"1".
现在
Get-SPWebTemplate | where { $_.ID -eq 1 }
Run Code Online (Sandbox Code Playgroud)
将导致每种安装语言的3个结果(STS#0,STS#1,STS#2).如何检索正确的SPWebTemplate-Name(STS#1)?
在此先感谢,
乔纳斯
.net ×2
c# ×2
sharepoint ×2
winforms ×2
message-loop ×1
mvvm ×1
powershell ×1
spweb ×1
validation ×1
wpf ×1