使用WPF WebBrowser显示内容来阻止滚动条

我正在使用WPF WebBrowser组件来显示一些非常简单的HTML内容。 但是,由于我事先并不知道内容大小,因此当我加载某些数据集时,我正在获取控件上的滚动条。 基本上,我如何强制(或以其他方式影响相当于强制)WebBrowser扩展大小,以便显示所有内容而不需要滚动条?

在Windows窗体应用程序中使用Console.WriteLine

我有一个外部DLL,其源代码是C#。 从DLL的文档中,我确定它使用Console.WriteLine将其调试消息写入控制台。 我想在WinForms应用程序中使用此DLL。 但是,我发现我无法看到DLL发出的调试消息,因为WinForms应用程序没有控制台。 有没有办法捕获那些调试消息,甚至可能是一个简单的日志文件? 当然,使用ProcessInfo.RedirectStandartOutput将无法正常工作,因为我不将DLL用作进程。

移动窗口没有边框

如何移动没有边框的窗口。 应用程序上没有空白区域,所有可用的内容都是webbrowser和menustrip。 我希望用户能够通过拖动菜单条来移动窗口。 我该如何编码呢? 我尝试了一些我在网上找到的代码块,但都没有。

Microsoft.NET.CoreRuntime的SOS调试扩展

在尝试使用WinDbg跟踪UWP C#/ XAML存储项目中的致命空指针语言exception(c000027b)时,由于缺少Microsoft.NET.CoreRuntime的SOS调试扩展,我无法访问CLR Exception对象。 我无法找到匹配的sos.dll。 我错过了什么? 注意:应用程序崩溃是可重现的,但仅在未进行调试时才会发生。 因此,遗憾的是,在Visual Studio调试器下运行项目不是这种情况下的解决方案。 […] 0:009> dt -a6 000001c37c6587e0 combase!PSTOWED_EXCEPTION_INFORMATION_V2 [0] @ 000001c3`7c6587e0 ——————————————— 0x000001c3`7a8c8348 +0x000 Header : _STOWED_EXCEPTION_INFORMATION_HEADER +0x008 ResultCode : 80004003 +0x00c ExceptionForm : 0y01 +0x00c ThreadId : 0y000000000000000000100001111100 (0x87c) +0x010 ExceptionAddress : 0x00007ffb`e61f24dd Void +0x018 StackTraceWordSize : 8 +0x01c StackTraceWords : 5 +0x020 StackTrace : 0x000001c3`7c658a80 Void […]

如何在WPF应用程序中放置自定义Windows窗体控件?

作为一个短期解决方案,我试图将Windows窗体’usercontrol’堵塞到WPF应用程序中。 我在WPF应用程序视图中看到我可以向项目添加“自定义窗体控件”,它会创建一个空的自定义控件,但我无法弄清楚如何添加它。 理想情况下,我想知道如何从我编译的Windows窗体用户控件中获取.dll并将其粘贴到WPF应用程序中,或将用户控件导入WPF应用程序。 谢谢,山姆

如何让智能手机像滚动winforms触摸屏应用程序(滚动面板)

在网上搜索完文章后,我想出了一个基于winforms的触摸屏应用程序的设计,需要像滚动一样的智能手机。 该应用程序本身将在平板电脑或触摸屏桌面上运行。 我把我要滚动的所有内容放在面板上。 将autoscroll设置为true(将显示滚动条) 现在将整个面板放在一个组框中 缩小combobox,直到隐藏滚动条(视觉上隐藏,不可见= false) 现在我被困在的有趣部分。 我想我必须在面板上处理mousedown,mouseup和mousemove以设置自动滚动位置,以便当有人触摸面板并拖动时,它会滚动魔术。 请帮助填写以下方法存根中的几行代码。 autoscrollposition上的msdn doc非常混乱,因为它返回负数,但需要设置为abs,而不是。 Point mouseDownPoint; Point mouseUpPoint; Point mouseDragPoint; private void myPanel_MouseDown(object sender, MouseEventArgs e) { this.mouseDownPoint = e.Location; Console.WriteLine(“Mouse down at {0}”, e.location); } private void myPanel_MouseUp(object sender, MouseEventArgs e) { this.mouseUpPoint = e.Location; this.mouseDownPoint = new Point(); //will set for IsEmpty check Console.WriteLine(“Mouse Up […]

LINQ to Entities无法识别方法“方法名称”方法

我遇到了类似的问题: LINQ to Entities无法识别方法’System.String ToString()’方法,并且此方法无法转换为存储表达式 我正在尝试对我的源进行分页,但在我的情况下,我不能将GetPropertyValue的结果放在变量中,因为我需要x来做到这一点: public IEnumerable Paginate(IQueryable source, ref int totalPages, int pageIndex, int pageSize, string sortfield, SortDirection? sortdir) { totalPages = (int)Math.Ceiling(source.Count() / (double)pageSize); if (sortdir == SortDirection.Descending) { return source.OrderByDescending(x => GetPropertyValue(x, sortfield)).Skip(pageIndex * pageSize).Take(pageSize).ToList(); } else { return source.OrderBy(x => GetPropertyValue(x, sortfield)).Skip(pageIndex * pageSize).Take(pageSize).ToList(); } } private static object GetPropertyValue(object […]

列表的所有排列

我希望能够得到这样的清单 var list=new List{0, 1, 2}; 得到这样的结果 var result= new List<List>{ new List{0, 1, 2}, new List{0, 2, 1}, new List{1, 0, 2}, new List{1, 2, 0}, new List{2, 0, 1}, new List{2, 1, 0} }; 我对缺少数字的集合感兴趣,只对存在的数字组合感兴趣。 有任何想法吗? 此外,我已经研究过诸如从数字列表中获取所有可能的组合之类的解决方案,但它们并不合适。 那个给了我这样的东西 var result= new List<List> { // [[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]] // serialized the result to JSON so it […]

通过Skype4COM.dll COM API控制Skype

我正在使用C#使用Skype4COM.dll COM API ,它可以很好地满足我们所需的所有通信function。 我们正试图在Skype上放置一个更容易使用的界面,这个界面已经融入到我们的应用程序中。 我的麻烦在于控制或禁用哪些Skype窗口使用而不使用。 我认为我唯一需要的Skype窗口是Skypevideo电话/会议窗口。 我想隐藏和控制Skype可以呈现的每个窗口。 我甚至想禁用在来电时弹出的来电对话窗口,因为我们将展示我们自己的答案提示。 除了窗口管理之外,我对API很满意。 通过API,我可以看到如何启用Windows,但我似乎无法弄清楚如何隐藏它们,而不是将Skype消息发送到Skype应用程序。 我错过了什么吗? 谢谢你的帮助,肯尼

如何将这个foreach循环转换为Linq代码?

我是Linq的新手,我想修改旧的c#代码以使用Linq。 这段代码的想法是选择所有未设置的表和引用的字段PrimaryTable等于“myTable” foreach (Table table in dbServer.Tables) { if (!table.IsSet) { foreach (Reference refer in table.References) { if (refer.PrimaryTable == “myTable”) { tables.Add(table); } } } } 在互联网上挖掘后我得到了这段代码 var q = from table in dbServer.Tables let refers = from refer in table.References where refer.PrimaryTable == “myTable” select refer.ForeignTable where refers.Contains(table.Name) select table; var q = […]