Tag: winforms

从Excel到DataSet或DataGridView的快速方法

我从Excel工作表获取数据,最终目标是在DataGridView中显示数据。 目前我只是查看excel数据的UsedRange并将其插入到datagridview中。 这工作正常,但有100多行数据时,可能会陷入困境。 我也玩弄了从excel到数据集(使用相同的浪费方法),并且如预期的那样,加载数据大致是相同的时间。 我想知道有没有人有更好的方法的信息? 也许使用Excel文件中的XML? 编辑: 一些附加信息: 这是一个WinForms应用程序,用户将在运行时挑选和加载excel文件。 编辑 一些附加信息的返回: Excel文件位于用户的电脑上。 一般的假设是,他们每次使用应用程序时都会加载不同的文件。 [不知道这是否有帮助,但可能很好知道:)]

Excel代码中的消息(C#)

当我的代码运行时,我有一个从Excel中popup的消息框重试,我只是想让我的代码能够模拟input密钥,如果它popup每次它。 这是出现并冻结我的代码的消息框。 我使用OLE消息closures了其中的一个,但是我还是得到了这个消息箱来模拟点击重试或input密钥的方法。 //Turn off OLE Error Message oXL.DisplayAlerts = false;

生成输出文件的副本

我有一个应用程序,我在所有材料的末尾生成报告,通过点击生成报告button。 报告以Excel格式生成。 问题是,无论何时创build一个报告,我都可以在同一位置创build另一个具有相同名称的报告。 它基本上覆盖了第一份报告。 我想给用户一个方框说,你可以生成一个相同的名称或名称已经存在的报告,并select一个不同的名称。 谢谢您的帮助!

通过Excel打开WinForm

我有一个操作Excel文件的WinForm。 现在它是一个.exe ,它有一个硬编码的文件加载或创build方法(仅用于testing)。 我需要能够通过Excel文件打开.exe文件,然后将该文件(可能作为发件人通过某个事件?)添加到窗体进行操作。 下面是一个如何将Excel文件加载到表单中的例子。 public Excel.Application EXCEL_FILE; public frmMain() { InitializeComponent(); this.EXCEL_FILE = new Excel.Application(); this.EXCEL_FILE.SheetSelectionChange += new Excel.AppEvents_SheetSelectionChangeEventHandler(activeCellChanged); ExcelHandling.LoadExcelFile(); } public static void LoadExcelFile() { frmMain._frmMain.EXCEL_FILE.Workbooks.Open(@"F:\dsa.xlsx", 0, false, 5, "", "", true, Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0); frmMain._frmMain.EXCEL_FILE.Visible = true; } 总结我需要build立的工作stream程是:打开一些Excel文件 – >调用WinForm(通过加载项或其他东西?) – >加载调用WinForm的Excel文件。

如何创build一个将读取/编辑不同的Excel文件的Windows应用程序?

我的目标是为Windows环境创build一个简单的(一个文件)可执行文件,将打开一个非常简单的forms。 表单将从excel文件中读取数据,并在用户填写表单并提交后 – 应用程序将数据写入不同的excel文件。 这将由共享驱动器中的不同用户使用。 我有C / C ++ / C#/ .Net / Python和其他语言编程经验,但从来没有真正创build一个Windows程序。 任何想法,我应该从哪里开始? (相关教程将不胜感激) 谢谢!

使用C#添加到excel文件

我写了一个代码,允许用户input数据到程序中,这将转移到一个excel文件。 然而,我不希望任何东西被添加时,我的文本框之一是empty.With这个代码行仍然被添加,尽pipe我的if else条件。我debugging和使用的断点和txt_LRU!= null是真实的,即使txt_LRU是空了还是不行。请有人告诉我为什么会发生这种情况? private void button_kaydet_Click(object sender, EventArgs e){ //the text that is obtained from the text boxes and combo boxes. string txt_LRU = this.txtbx_LRUno.Text.ToString(); string txt_yi = this.txtbx_yi.Text.ToString(); string txt_td = this.cmbx_td.Text.ToString(); string txt_toptarih = this.dtp_toplanti.Text.ToString(); string txt_bastarih = this.dtp_bas.Text.ToString(); string txt_teslimtarih = this.dtp_teslim.Text.ToString(); string txt_ilgilinot = this.txtbx_ilgiliNot.Text.ToString(); string txt_acikislem = this.txtbx_acikislem.Text.ToString(); string […]

如何通过在List C#中传递checkbox名称来在Winform上创builddynamiccheckbox?

我正在开发excel插件项目c#。 想要创buildList中传入名称的checkbox列表,我怎样才能创build与名为? 并且还想取那个checkbox的选定值。 目前我有一个buttonLoadEmployee当我点击所有EmployeeNames从Sql表直接加载到Excel工作表 现在我想要做的是,当我点击LoadEmployee ,将打开一个包含所有员工姓名的popup窗口,每个emplyee名称都有一个checkbox,我select哪一个员工姓名只填充其他。 在@Vajura给出的答案的帮助下,我尝试了一下 称为popup窗体使用 new FilterDataForm().ShowDialog(mylist); popup窗体.cs internal void ShowDialog(MyModel.ListEmployee> mylist) { GenerateFilterList(mylist); } private void GenerateFilterList(List<ListEmployee> mylist) { System.Windows.Forms.CheckBox box; for (int i = 0; i < mylist.Count; i++) { box = new System.Windows.Forms.CheckBox(); box.Tag = mylist[i]; box.Text = mylisti].ToString(); box.AutoSize = true; box.Location = new Point(10, i * 50); […]

无法通过在WinForm应用程序中使用BindingList将数据绑定到DataGridView

我正在从Excel文件(.csv)读取数据并将该数据存储到List<String> 。 我想显示这个数据到DataGridView但由于某种原因,我看到在Grid length of String总length of String 。 以下是我的代码: 码: private void btnImportFile_Click(object sender, EventArgs e) { OpenFileDialog dialog = new OpenFileDialog(); dialog.Filter = "CSV (Comma delimited) (*.csv)|*.csv"; dialog.FilterIndex = 1; dialog.Multiselect = false; var userClickedOK = dialog.ShowDialog(); if (userClickedOK.ToString().Equals("OK")) { this.lblImportedFileName.Text = dialog.SafeFileName; System.IO.Stream fileStream = dialog.OpenFile(); using (System.IO.StreamReader reader = new System.IO.StreamReader(fileStream)) […]

如何在多个工作表中输出c#中的excel文件

我有这样的代码,从1列表视图使用C#导出Excel文件。 我现在的问题是,如果我有两个列表视图将生成1个Excel文件,我的计划是listview1是为sheet1和listview2是为sheet2。 这是我的代码生成listview1 excel到sheet1: string[] st = new string[listView1.Columns.Count]; DirectoryInfo di = new DirectoryInfo(Environment.ExpandEnvironmentVariables("%USERPROFILE%") + @"\Desktop\"); if (di.Exists == false) di.Create(); fileName f = new fileName(); if (f.ShowDialog() == DialogResult.OK) { StreamWriter sw = new StreamWriter(Environment.ExpandEnvironmentVariables("%USERPROFILE%") + @"\Desktop\" + f.Filenam + ".xls", false); sw.AutoFlush = true; string header = ""; for (int col = 0; […]

如何减less程序执行时间,提高整体性能?

我已经创build了一个Windows应用程序来处理一个文件夹中的一组excel文件,从它们中寻找一些select性的信息。 之后,它将所有这些信息存储到一个新的Excel表单中。 这是一种报告生成工具。 我正在努力减less这个应用程序的总体执行时间。 目前,总共需要大约45-50秒完成一个成功执行周期。 代码与此类似: PS由于限制政策,我无法分享实际的代码。 但是下面显示的代码足以提供一些解决scheme。 #region master_tracking_sheet public string[] xlsfiles; public string[] personList = new string[35]; public string[,] excelSheet_det = new string[35, 6]; private void buttonBrowseFolder_Click(object sender, EventArgs e) { if (folder_browse_excelSheet.ShowDialog() == DialogResult.OK) { this.txt_DirPath.Text = folder_browse_excelSheet.SelectedPath; gotFile = true; } } private void btnCreateMasterSheet_Click(object sender, EventArgs e) { try { […]