Tag: .net

创建动态按钮并使用c#将它们置于预定义的顺序中

NET 4.5 C#创建一个Windows窗体。 我想动态创建和添加按钮并为它们分配点击事件,但希望它们像图像一样以特定方式动态放置。 我的问题是如何以上述方式动态放置按钮,即4×4格式(连续4个按钮,4列但无限行)。 是否有可能以胜利forms这样做? 现在我正在尝试下面提到的代码,但是我不知道如何放置如上所示的按钮。 public Form1() { InitializeComponent(); for (int i = 0; i < 5; i++) { Button button = new Button(); button.Location = new Point(160, 30 * i + 10); button.Click += new EventHandler(ButtonClickCommonEvent); button.Tag = i; this.Controls.Add(button); } } void ButtonClickCommonEvent(object sender, EventArgs e) { Button button = sender […]

Nullable 的装箱/拆箱行为怎么可能?

我今天早些时候发生的事情让我摸不着头脑。 任何Nullable类型的变量都可以赋值为null 。 例如: int? i = null; 起初我无法看到如果不以某种方式定义从object到Nullable的隐式转换,这将是如何可能的: public static implicit operator Nullable(object box); 但是上面的运算符显然不存在,好像它确实如此,那么以下内容也必须是合法的,至少在编译时(它不是): int? i = new object(); 然后我意识到也许Nullable类型可以定义一个隐式转换到一些永远无法实例化的任意引用类型,如下所示: public abstract class DummyBox { private DummyBox() { } } public struct Nullable where T : struct { public static implicit operator Nullable(DummyBox box) { if (box == null) { return new Nullable(); […]

为什么WebBrowser_DocumentCompleted()会触发两次?

好吧,我使用一个简单的webbrowser控件来浏览页面,所以我需要在这样做时更改表单的Text。 我正在使用 – private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) { this.Text += ” – ” + webBrowser1.Document.Domain; } 但是使用断点,我注意到,这个事件发射了两次。 我甚至尝试过_Navigated()事件。 它也开了两次。 得到的标题为”Webber – google.co.in – google.co.in” .. 我也注意到这个事件在加载msn.com时多次激活..我只是在页面完成加载时才尝试更改表单的文本.. 任何补救措施?

将C#字符串解析为DateTime

我有一个这样的字符串:250920111414 我想从该字符串创建一个DateTime对象。 截至目前,我使用substring并像这样做: string date = 250920111414; int year = Convert.ToInt32(date.Substring(4, 4)); int month = Convert.ToInt32(date.Substring(2, 2)); … DateTime dt = new DateTime(year, month, day …); 是否可以使用字符串格式来做同样的事情,没有子字符串?

在运行时更新app.config system.net设置

我需要在运行时更新.Net exe app.config文件的system.net SectionGroup中的设置。 我没有在运行时对原始配置文件的写访问权限(我正在开发一个.Net dll加载项,它由我无法控制的应用程序提供的exe托管)所以我希望保存一份副本的文件,并在运行时用修改后的版本替换exe中的配置。 我尝试过以下但是没有用。 有什么建议? Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); NetSectionGroup netSectionGroup = config.GetSectionGroup(“system.net”) as NetSectionGroup; netSectionGroup.Settings.HttpWebRequest.UseUnsafeHeaderParsing = true; config.SaveAs(@”C:\ProgramData\test.config”, ConfigurationSaveMode.Full); AppDomain.CurrentDomain.SetData(“APP_CONFIG_FILE”, @”C:\ProgramData\test.config”);

无法从Gridview – Windows窗体中将记录插入表中

我正在尝试从C#接口网格视图中将新记录插入到源表中….但是当我使用下面显示的buttonclick代码检索记录时…我在gridview中获取记录但没有插入新记录的选项(附加屏幕截图)..我可以从网格视图更新reocrds。 是否有任何选项或属性用于在gridview中启用插入选项? Buttonclickcode: private void RetrieveRules_button_Click(object sender, EventArgs e) { this.dataGridView.DataSource = null; this.dataGridView.Rows.Clear(); SqlCommand cmd1 = con.CreateCommand(); cmd1.CommandType = CommandType.Text; cmd1.CommandText = @” Select TOP 1 * FROM ” + schemaName + “[ERSBusinessLogic] ORDER BY ERSBusinessLogic_ID DESC”; con.Open(); cmd1.ExecuteNonQuery(); DataTable dt = new DataTable(); SqlDataAdapter DA = new SqlDataAdapter(cmd1); DA.Fill(dt); dataGridView.DataSource = dt; con.Close(); […]

我如何在.net中进行Unescape和Reescape字符串?

我需要一个WPF控件上的TextBox,它可以接受像Commit\r\n\r这样的文本(这是.net字符串”Commit\\r\\n\\r” )并将其转换回”Commit\r\n\r”作为.net字符串。 我希望有一个string.Unescape()和string.Escape()方法对,但它似乎不存在。 我是否必须自己写? 或者有更简单的方法吗?

如何阻止用户关闭我的C#应用​​程序?

如何在C#中使用unclosed应用程序? 我想禁用表单的“X”按钮,并阻止Windows任务管理器关闭它。 我知道阻止表单关闭的一种方法是处理FormClosing事件,但是如何阻止任务管理器关闭它?

在c#中将网页捕获为图像,确保javascript呈现的元素可见

我试图使用标准的c#.net代码捕获以下页面。 我一直在寻找人们的各种方法,其中大多数方法涉及实例化浏览器对象和使用绘图到位图方法。 但是,这些都不会在此页面上获取图表的内容: http://www.highcharts.com/demo/combo-dual-axes 也许javascript没有时间运行,但添加Thread.Sleep(x)没有帮助。 这个商业组件正确捕获它,但我宁愿避免在我的项目中需要额外的依赖,并且当其他解决方案太接近时支付150美元! 有人发现他们的解决方案正确呈现吗?

如何将lambda表达式传递给WCF服务?

我目前的项目是使用IDesign架构,所以我的所有层都是服务。 我希望在我的资源访问层的CRUD中使用我的Read方法以lambda表达式的forms获取谓词以及要拉取的相关对象列表。 这样,资源访问层将非常通用。 [OperationContract] Result ReadObjects(Func predicate, string[] includes); 现在我来发现一些应该是显而易见的事情,那就是我无法序列化lambda表达式。 我研究了将字符串解析为lambda表达式,但这也是不行的。 有什么方法可以用来将lambda表达式传递给服务吗? 有没有更好的方法来做我想做的事情?