最近我对我们使用的很多控件进行了一些改进,例如给出属性默认值并使按钮变为私有而不是受保护.通过进行这种调整,您需要重新生成具有此控件的表单的设计器文件或从控件继承的控件.
在过去,这不是一个真正的问题,因为我们只有20-30个表格.目前我们有超过300种形式,这意味着在VS2010中打开相同数量的设计师.
所以我的问题是:你知道一种自动化这个过程的方法,以便重新生成所有表格吗?
我一直在考虑一个查找设计器文件并打开文件的宏(打开最多25-50个文件以确保VS不会崩溃),但我无法使其工作.
我希望有人有个建议!
c# user-interface automated-refactoring windows-forms-designer visual-studio
如何在Windows窗体中添加checkbox到datagridview编码.
我有datatable一个列,value=true;
而另一列datatable我有该列的设置为value='Checkbox'
所以,如果我的值为true,checkbox那么默认的数据表value单元格必须替换为checkbox选择的true.以这种方式
如果默认值为true,则应在该复选框中进行检查.
这可能是一个非常明显的问题,但我无法弄清楚.
我有一个由表单设计器管理的Windows窗体.我想要包含一个自定义用户控件,也由表单设计器管理.但是我无法让自定义控件显示在工具箱中,即使我尝试在"选择项目..."对话框下手动添加它也是如此.
表单和控件都在同一个程序集中.我已经尝试将控件分成单独的程序集,以便按照此处的说明进行操作,但无济于事.我也在使用C++/CLI,如果它改变了什么.
是否有属性或类似物我应该设置为我的控件才能显示在Designer工具箱中?
在控件上我使用多个属性属性:
[Browsable(false)]
[Bindable(false)]
[EditorBrowsable(EditorBrowsableState.Never)]
[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
[Obsolete("", true)]
public new Boolean AllowDrop;
Run Code Online (Sandbox Code Playgroud)
我也在许多其他控件属性上使用这些属性.
我想知道是否有办法减少每次写入的代码量.
如果我可以组合这样的多个属性会很好:
[Hidden(true)]
public new Boolean AllowDrop;
Run Code Online (Sandbox Code Playgroud)
该Hidden财产将包括上述所有属性.所以只有一行代码.
也许还有一种方法可以在宏或其他东西中组合属性?
我知道还有其他隐藏属性的方法,但我选择了使用属性的方式.
谢谢
我已经查看了生成的Forms和UserControls的设计器代码,并且在InitializeComponent()方法中它们始终以
this.SuspendLayout();
Run Code Online (Sandbox Code Playgroud)
结束
this.ResumeLayout(false);
this.PerformLayout();
Run Code Online (Sandbox Code Playgroud)
但是从这些方法的msdn文档中我可以看到,不会以
this.ResumeLayout(true); // Or just this.ResumeLayout()
Run Code Online (Sandbox Code Playgroud)
做同样的事情?或者我在这里遗漏了什么?
问,因为我将在一个不同的方法中添加一堆控件,并认为我应该执行suspend-resume例程以获得高效和高效.但是当你看似只使用一个时,无法弄清楚这两个方法调用的原因是什么......
我正在开发一个Windows窗体项目.它包含一个标签控制器,每个页面都有多个页面和多个控件.
看来,相对于最近,在一些形式更改之后,每次构建和运行解决方案时,表单都会调整大小/缩小.
因此,如果我将表单高度的大小设置为768,一旦我单击"开始"构建并运行它,我实际上可以看到它在此过程中调整自身大小,然后表单加载比高度值短21个像素这是为了建设.
如果我继续构建和运行我的项目,表单每次将减少21个像素,使每个构建它变得越来越小.
我们认为在将"DataGridView"控制器添加到其中一个选项卡时可能会引入它,但我们还没有证明是否是这种情况.
有没有理由为什么会这样,有什么可以做到这一点?为什么它会在构建运行时自行调整大小?
我们最近将一个Winforms项目从Visual Studio 2008迁移到了Visual Studio 2012.转换过程非常顺利,所有内容都很好,但我们现在正在努力与winforms设计器一起运行,它的运行速度非常慢.
举个例子,如果我们打开一个小表单(表单包含两个文本框,一个数字更新和两个按钮 - 所有标准内置控件,没有第三方),2012年大约需要40-45秒在2008年,它会在1或2秒内打开.对于我们较大的形式,这种差异更加明显.在2008年,打开表格需要大约7秒钟,但在2012年需要6分钟.最糟糕的是,这是一个阻塞动作,VS2012在打开表单时几乎完全没有响应.这也是通过单击表单的.h来实现的,所以我们不能仅仅通过坚持代码本身来轻松避免它.
还有其他人经历过这个吗?有谁知道它为什么会发生,如果有什么可以做的吗?
其他信息:我们的应用程序是一个C++/CLI winforms应用程序.在我们所有运行Windows 7 x64的开发机器上都可以看到这种行为.我的机器是Core i7 860 CPU,内存为12Gb(现在我正在对以上内容进行基准测试时超过60%) - 绰绰有余,我想.在任何情况下,我的系统运行速度都不慢,它只是VS2012的设计者.
编辑:只是为了进一步澄清,我们没有安装任何插件或类似的东西.这是一个处女VS2012安装.
EDIT2:它似乎也不是网络的东西.
.net c++-cli windows-forms-designer winforms visual-studio-2012
我收到以下错误
找不到类型'My.Special.UserControl'.请确保引用包含此类型的程序集.如果此类型是开发项目的一部分,请确保使用当前平台或任何CPU的设置成功构建项目.
但是没有任何意义的是,My.Special.UserControl它与表单在同一个程序集中.更重要的是,如果我在Designer.cs文件上查看代码,那么对它的引用My.Special.UserControl似乎没问题.组件构建良好,运行良好.这是设计师遇到的问题.
因此,我们必须通过手动调整Designer.cs文件来完成所有设计工作.如何让设计师再次工作?
我是Microsoft Rdlc Report Designer扩展和NuGet ReportViewerControl.Winform包.
现在可以在Visual Studio 2017设计器中打开*.rdlc文件,但是当我尝试保存报表时出现错误:"未知报表版本:9.0
此外,我无法创建空*.rdlc文件,因为在新文件...对话框中没有相同的模板
UPD:
在this那一刻,我不知道如何解决,但我知道藿,以避免它:
old在VS2015中打开报告然后保存 - 下次VS2017可以打开/编辑/保存文件.
专家
我想在5分钟后自动洗牌.Windows窗体包含多个查询,多个视频,多个powerpoint.
我有三种窗体形式,如下所示.
表格1代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Daily_System {
public partial class Form1: Form {
public Form1() {
InitializeComponent();
timer1.Enabled = true;
timer1.Interval = 5000;
timer1.Tick += timer1_Tick;
timer1.Start();
}
private void Form1_Load(object sender, EventArgs e) {
this.WindowState = FormWindowState.Maximized;
CenterToScreen();
}
private Timer timer1 = new Timer();
private void button1_Click_1(object sender, EventArgs e) {
this.WindowState = FormWindowState.Minimized;
Form2 f = new Form2(); // …Run Code Online (Sandbox Code Playgroud)c# powerpoint windows-forms-designer winforms visual-studio-2012
c# ×8
winforms ×6
.net ×4
c++-cli ×1
datagridview ×1
datatable ×1
forms ×1
powerpoint ×1
rdlc ×1