zoukankan      html  css  js  c++  java
  • winform碎片

    1.通过同一个pictureBox控件加载不同的图片,在加载前需要释放控件里之前的Image。

    pictureBox1.Image.Dispose();//Dispose之后对象就不存在了,只能重新Create.

    2.DataTable添加一个checkbox新列作为第一列,DataTable绑定到datagridView。

    //add a new column for checkbox
    DataColumn dc = new DataColumn("IsSelected", System.Type.GetType("System.Boolean"));
    dc.DefaultValue = false;
    dt.Columns.Add(dc);
    dt.Columns["IsSelected"].SetOrdinal(0);
    
    //设置只有checkbox可编辑
    
    dataGridView1.DataSource = dt;
    for (int i = 1; i < dt.Columns.Count; i++)
    {
    dataGridView1.Columns[i].ReadOnly = true;
    }
    
    //默认不选中第一行
    
    /*默认不选中第一行第一列的动作要放在窗体的Load事件里或者button等其他事件里,若DataGridView作为自定义控件出现,则应该在父容器的Load事件里写以下语句或者在父容器load之后再执行下列动作。*/
    
    DataGridView.Rows[0].Selected=false;
    dataGridView1.Refresh();
    
    //给添加的DataGridViewComboBoxColumn默认选中某项
    
    ((DataGridViewComboBoxColumn)dataGridView1.Columns["columnName"]).DefaultCellStyle.NullValue = 
    "value";
    
    //绑定数据源的datagridview插入新行
    
     DataRow dr = ((DataTable)dataGridView1.DataSource).NewRow();
    
     ((DataTable)dataGridView1.DataSource).Rows.InsertAt(dr,e.RowIndex+1);
    
    //datagridviewcolumncell可换行显示
    
    dataGridView1.Columns[i].DefaultCellStyle.WrapMode = DataGridViewTriState.True;

    3.ComboBox输入时提示,suggest为模糊查询,append为自动填充,可在控件的property处设定。

    comboBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend;  
    
    comboBox1.AutoCompleteSource = AutoCompleteSource.ListItems; 

    4.WinForm窗体默认情况下AutoScaleMode为Font,但为了解决两台不同分辨率的机子显示效果相同,保证控件大小一致,可将此属性设成None,禁用缩放。

    MSDN关于此项属性的枚举类型的说明如下:
    None:禁用缩放。
    Font:根据类使用的字体(通常为系统字体)的维度控制缩放。
    Dpi:根据显示分辨率控制缩放。常用分辨率为 96120 DPI。
    Inherit:根据类的父类的缩放模式控制缩放。如果不存在父类,则禁用自动缩放。

    5.DataGridView绑定数据量太大时重绘很慢,可将 AutoSizeColumnsMode和AutoSizeRowsMode设成None,改变行高的设置(RowTemplate->Height).

    6. 有关combobox

    (1)List绑定到combobox的高效方法:

     cmb.Items.AddRange(list.ToArray());

    (2)combobox的Items放到一个List中:

    List<string> list = cmb.Items.Cast<object>().Select
    (item => item.ToString()).ToList();

  • 相关阅读:
    Android开发--去掉标题栏
    Android开发app如何设定应用图标下的应用名称为汉字以及自定义图标
    mysql的sql其他 SQL中inner join、outer join和cross join的区别
    中文乱码问题 -js页面传值乱码
    liunx Centos Xshell 简单命令汇总
    html 属性及相关应用-实例
    时间格式转换
    三元表达式
    Grid++Report生成简单的条形码、Excel导出、图表控件 等
    jmp指令的简单应用
  • 原文地址:https://www.cnblogs.com/nora/p/4956402.html
Copyright © 2011-2022 走看看