我ChildWindow已将CloseButton和处理程序分配给Click事件.代码(仅举例):
声明关闭按钮:
<Button x:Name="CloseButton" Click="OnCloseButtonClick" />
Run Code Online (Sandbox Code Playgroud)
专用计数器(用于诊断问题):
private uint _i;
Run Code Online (Sandbox Code Playgroud)
关闭事件处理程序
OnCloseButtonClick(object sender, RoutedEventArgs e)
{
DialogResult = true;
System.Diagnostics.Debug(_i++);
}
Run Code Online (Sandbox Code Playgroud)
快速点击程序后可以输出"1","2","3"等...正如我所知,在设置DialogResult= true(或false)之后,应该关闭ChildWindow并且不应该有任何方法来提升CloseButton的Click事件第二次.
任何人都可以帮助我找出问题的原因并帮助解决它没有bool标志(执行/!执行)?
如何使用WebBrowser控件更改我的html文档方向(到横向)以进行打印.
var browser = new WebBrowser();
browser.DocumentCompleted += (sender, args) =>
{
var ws = sender as WebBrowser;
//change paper size and orientation
ws.Print();
};
browser.Navigate(path);
Run Code Online (Sandbox Code Playgroud)
我需要在打印前将纸张尺寸格式更改为C5并将方向更改为横向.如何在没有任何对话框的情况下执行此操作?
假设我们有行动:
[HttpGet]
public Task<IActionResult> Foo(DateTime date)
{
var utc = date.ToUniversalTime();
}
Run Code Online (Sandbox Code Playgroud)
似乎默认情况下,MVC框架将UTC DateTime转换为Local(中间件中的某处)。如何关闭此行为并摆脱其他转换?
UPD:
Chrome开发人员。控制台(“网络”选项卡)向我显示了这样的查询参数:
date:2017-12-01T00:00:00.000Z
但是在控制器中我看到:
{01/12/2017 03:00:00}
具有以下功能:
function appendToSB([System.Text.StringBuilder]$sb,
[string]$value){
[void]$sb.append($value)
$sb
}
$sb = new-object -typename system.text.stringbuilder
$sb = appendToSb($sb, "1,")
$sb.tostring() | out-host
Run Code Online (Sandbox Code Playgroud)
我想使用我的函数使用StringBuilder构建字符串,但我收到以下错误:
appendToSB:无法处理参数'sb'上的参数转换.无法将ty pe"System.Object []"的"System.Object []"值转换为"System.Text.StringBuilder"类型.在E:\ powershell\test.ps1:8 char:11 + appendToSb([system.text.stringbuilder] $ sb,"1,")+ ~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo:InvalidData :( :) [appendToSB],ParameterBindingArgumentTransformationException + FullyQualifiedErrorId:ParameterArgumentTransformationError,appendToSB
有没有人可以解释函数/函数参数/返回值如何在powershell中工作?
此外,当我需要在松散耦合的对象(例如MVVMViewModel 的)之间进行通信时,有关最佳编程实践的不同书籍和博客建议使用 Mediator/EventAggregator 模式。我的问题是关于这些模式之间的差异/关系。谁能为我描述一下?
我无法在.NET 4.5中找到System.ComponentModel.Composition.Initialization.dll(其中包含CompositionInitializer类的声明).是否已从.NET 4.5中的MEF中删除此程序集?我现在如何组成标有[导出]和[导入]属性的应用程序的部分?
假设我有这个观点:
internal partial class StartWindow : Window
{
public StartWindow()
{
InitializeComponent();
DataContext = ViewModel;
}
[Import]
public IStartWindowViewModel ViewModel { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
和适当的ViewModel:
[Export]
internal class StartWindowViewModel : IStartWindowViewModel
{
public IEnumerable<Customer> Customers { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我应该在我的shell(或其他地方)添加什么来组成这些部分?
有一个代码:
//e = 1/2*Sum((yi -di)^2)
let error y d =
let map =
Array.map2 (fun y d -> (y - d) ** 2.0) y d
let sum =
Array.sum map
(sum / 2.0)
let error2 y d =
Array.map2 (fun y d -> (y - d) ** 2.0) y d
|> Array.sum
|> (/) 2.0
Run Code Online (Sandbox Code Playgroud)
我理解这些功能应该产生相同的结果,但结果有很大的不同.有谁能解释一下?
ps简化示例:
let test = [|1..10|]
let res = test
|> Array.sum
|> (/) 5
Run Code Online (Sandbox Code Playgroud)
我希望test = 11(sum(1..10)= 55然后是55/5)但是在Array.sum管道不能正常工作之后(结果test = 0).
在ASP.NET Core 2中,当我们谈论日志记录时,仅通过注册提供程序ILoggerFactory.AddProvider()或使用适当的扩展方法就足够了.然后你就可以解决ILogger<T>(没有注册关闭ILogger<>的).我正在努力与ILoggerFactory.CreateLogger<T>调用和实际ILogger<T>解决之间的桥梁:似乎某处魔术发生,但我没有找到.有任何想法吗?
ControllerBase类具有一堆类似Created或CreatedAtAction需要value参数的方法。
[NonAction]
public virtual CreatedAtActionResult CreatedAtAction(string actionName,
string controllerName,
object routeValues,
object value)
{
return new CreatedAtActionResult(actionName, controllerName, routeValues, value);
}
Run Code Online (Sandbox Code Playgroud)
它的文档(确实很差)说:
要在实体主体中格式化的值。
我不明白该参数代表什么?实际上,既不在CreatedAtActionResult类本身内,也没有在基类内使用它。此外,没有方法重载允许不使用它。
c# ×5
.net ×4
asp.net-core ×3
mvvm ×2
asp.net ×1
asp.net-mvc ×1
f# ×1
mef ×1
pipeline ×1
powershell ×1
printing ×1
silverlight ×1
wpf ×1