如何在XAML中使用C#自定义子类?

这是我的问题:我想在MyWindow中使用SurfaceInkCanvas的子类。 我创建了一个这样的C#类: namespace MyNamespace { public class SubSurfaceInkCanvas : SurfaceInkCanvas { private MyWindow container; public SubSurfaceInkCanvas() : base() { } public SubSurfaceInkCanvas(DrawingWindow d) : base() { container = d; } protected override void OnTouchDown(TouchEventArgs e) { base.OnTouchDown(e); } } } 我想在我的XAML窗口中使用它。 这是这样的吗? 我完全走错了路吗?

MassTransit消息错误输入

我正在尝试通过MassTransit发布的消息遇到基本类型问题。 考虑以下: [Serializable] public abstract class Event : CorrelatedBy { public Guid CorrelationId { get; set; } public abstract string EventName { get; } public override string ToString() { return string.Format(“{0} – {1}”, EventName, CorrelationId); } } [Serializable] public class PersonCreated : Event { public PersonCreated(Guid personId, string firstName, string lastName) { PersonId = personId; […]

WinRT中UIElement的绝对坐标

无法找到一种方法来定位Metro风格应用中UIElement绝对位置。 有人知道解决方案吗? (上下文:我希望弹出窗口显示在名为它的按钮旁边)

安装了Selenium WebDriver.ChromeDriver Nuget包,但不适用于MSTest

我已将WebDriver.ChromeDriver nuget包添加到我的解决方案中,该解决方案包含Selenium WebDriver使用Chrome运行自动化测试所需的ChromeDriver.exe文件。 查看包内容,它只包含以下文件: tools\chromedriver.exe 这应该做的是将此文件夹添加到PATH环境变量,以便可以通过以下代码访问chromedriver.exe (这是在使用MSTest的UnitTest项目中): [TestMethod] public void LaunchWebsite_Chrome() { // create ChromeDriver – this should work if chromedriver.exe // is known to the environment PATH variable IWebDriver driver = new ChromeDriver(); driver.Navigate().GoToUrl(“http://localhost/”); } 但是,我仍然遇到以下exception: chromedriver.exe文件不存在于当前目录或PATH环境变量的目录中。 该驱动程序可以从http://code.google.com/p/chromium/downloads/list下载。 查看nuget文档,它表明nuget包的tools文件夹中的任何内容都将自动添加到PATH环境变量中: http://docs.nuget.org/docs/creating-packages/creating-and-publishing-a-package :软件包的tools文件夹用于可从软件包管理器控制台访问的powershell脚本和程序。 将文件夹复制到目标项目后,它将添加到`$ env:Path(PATH)环境变量中。 但是,这似乎不起作用。 我甚至在命令行上运行了echo %PATH% ,它没有将我的工具文件夹显示为已注册。 我究竟做错了什么?

Mock HttpContext使用moq进行unit testing

我需要模拟HttpContext进行unit testing。 但我正在努力。 我正在创建一个方法,通过SessionIdManager以编程方式更改sessionId。 而SessionIdManager需要HttpContext而不是HttpContextBase。 但我找不到任何模拟HttpContext的例子。 那里的所有例子都只是制作HttpContextBase。 我在下面试过但是没用 HttpContext httpContext = Mock(); HttpContext httpContext = (HttpContext)GetMockHttpContextBase(); public HttpContextBase GetMockHttpContextBase() { var context = new Mock(); var request = new Mock(); var response = new Mock(); var session = new Mock(); var application = new Mock(); var httpContext = new Mock(); var server = new Mock(); […]

如何在C#中将DataRow转换为DataRowView

可以或如何将DataRow转换为DataRowView? 例如: DataTable dt=ds.Tables[0]; DataRow dr= dt.NewRow(); DataRowView drv = ????

立即从异步方法投掷

从async Task方法抛出的exception的正常行为是保持hibernate状态,直到稍后观察它们,或者直到任务被垃圾收集。 我可以想到我可能想立即抛出的情况。 这是一个例子: public static async Task TestExAsync(string filename) { // the file is missing, but it may be there again // when the exception gets observed 5 seconds later, // hard to debug if (!System.IO.File.Exists(filename)) throw new System.IO.FileNotFoundException(filename); await Task.Delay(1000); } public static void Main() { var task = TestExAsync(“filename”); try { Thread.Sleep(5000); […]

如何使用javascript在新标签页中打开链接

我正在一个网站上工作,我必须从后端打开一个url。 我现在正在使用c#。 我的问题是我想在新标签而不是新窗口中打开链接。 我的代码在这里: – string url = ppHref.ToString(); string newScript = “window.open(‘” + ppHref.ToString() + “‘, ‘_blank’);”; ClientScript.RegisterStartupScript(this.GetType(),”OpenUrl”, newScript); 任何人都可以告诉我如何在新标签中打开此url。 我不喜欢弹出窗口,所以我不想使用window.open() 。 请帮我。 提前致谢

非阻塞锁定

我想为一个重复操作开始一些新的线程。 但是当这样的操作已经在进行中时,我想丢弃当前的任务。 在我的场景中,我只需要非常新的数据 – 丢弃的数据不是问题。 在MSDN中我找到了Mutex类,但据我所知,它等待轮到它,阻塞当前线程。 另外我想问你: .NET框架中是否存在某些东西,它会执行以下操作 : 某些方法M是否已被执行? 如果是这样, return (并让我增加一些统计计数器) 如果没有,请在新线程中启动方法M.

将HtmlDocument.DomDocument转换为字符串

如何将HtmlDocument.DomDocument转换为字符串?