错误 3 当前上下文中不存在名称“printPreviewDialog1”

解决方案 »

  1.   

     private void 打印ToolStripMenuItem_Click(object sender, EventArgs e)
            {
                //开始打印
                printDocument1.Print();
            }        void printdoc_PrintPage(object sender, PrintPageEventArgs e)
            {
                int y = 0;
                //设置字体
                Font f = new Font("宋体", 20);
                //控制打印是什么内容 label1.text是打印内容 f是字体对象 brushes是填充颜色 10,10是打印到纸上的起始坐标
                for (; index < dt.Rows.Count; index++)
                {
                    y += 100;
                    if (y >= e.PageBounds.Height - 100)
                    {
                        y = 0;
                        e.HasMorePages = true;
                        index++;
                        return;
                    }                e.Graphics.DrawString(dt.Rows[index][0].ToString(), f, Brushes.Black, 300, y);
                    e.Graphics.DrawString(dt.Rows[index][1].ToString(), f, Brushes.Black, 400, y);
                    e.Graphics.DrawString(dt.Rows[index][2].ToString(), f, Brushes.Black, 500, y);
                }            e.HasMorePages = false;
            }
           
            private void 预览ToolStripMenuItem_Click(object sender, EventArgs e)
            {
                printPreviewDialog1.Document = printDocument1;            if (printPreviewDialog1.ShowDialog() == DialogResult.OK)
                    printDocument1.Print();
            }        private void Form1_Load(object sender, EventArgs e)
            {
                SqlDataAdapter sda = new SqlDataAdapter();
                sda.SelectCommand = new SqlCommand("select * from ghlb", new SqlConnection(sql.getCon()));
                dt = new DataTable();            sda.Fill(dt);
                dataGridView1.DataSource = dt;            printDocument1.PrintPage += new PrintPageEventHandler(printdoc_PrintPage);
            }
      

  2.   

    本帖最后由 net_lover 于 2012-05-20 22:57:04 编辑
      

  3.   

    printPreviewDialog1 这个呢?
      

  4.   

    错误 1 未能找到类型或命名空间名称“printPreviewDialog”(是否缺少 using 指令或程序集引用?) d:\我的文档\visual studio 2010\Projects\ghlbapgl\ghlbapgl\Form1.cs 46 17 GHLB
      

  5.   

    PrintPreviewDialog printPreviewDialog1 = new PrintPreviewDialog();   
      

  6.   


            private void button1_Click(object sender, EventArgs e)
            {
                try
                {
                    RefreshData();
                }
                catch (Exception ex)
                {
                    sql.cn.Close();
                    MessageBox.Show(ex.Message);
                }
            }
    错误 1 当前上下文中不存在名称“sql” D:\我的文档\Visual Studio 2010\Projects\ghlbapgl\ghlbapgl\Form1.cs 89 88 GHLB
      

  7.   


            void RefreshData()
            {
                string sqlStr;
                //DataSet ds = new DataSet();
                sqlStr = "select * from ghlb";
                ds = SQL.GetDataFromDB(sqlStr);
                if (ds != null)
                {
                    dataGridView1.DataSource = ds.Tables[0];
                    dataGridView1.Columns[1].HeaderText = "号别ID";
                    dataGridView1.Columns[1].Width = 85;
                    dataGridView1.Columns[2].HeaderText = "号类";
                    dataGridView1.Columns[2].Width = 100;
                    dataGridView1.Columns[3].HeaderText = "科室";
                    dataGridView1.Columns[3].Width = 100;
                    dataGridView1.Columns[4].HeaderText = "名称";
                    dataGridView1.Columns[4].Width = 100;
                    dataGridView1.Columns[5].HeaderText = "价格";
                    dataGridView1.Columns[5].Width = 85;
                    dataGridView1.Columns[6].HeaderText = "简码";
                    dataGridView1.Columns[6].Width = 100;
                    dataGridView1.Columns[7].HeaderText = "急诊标记";
                    dataGridView1.Columns[7].Width = 100;
                    dataGridView1.Columns[8].HeaderText = "说明";
                    dataGridView1.Columns[8].Width = 100;
                    
                }
                else
                {
                    dataGridView1.DataSource = null;
                }
            }        private void button7_Click(object sender, EventArgs e)
            {
                try
                {
                    RefreshData();
                }
                catch (Exception ex)
                {
                    SQL.cn.Close();
                    MessageBox.Show(ex.Message);
                }
            }
    这个我是想实现全显的功能的,结果,我发现显示在datagridview中的数据错位了。是另外独立的几个列例如,他们应该是对应的啊,可是效果却没有对应,一时间没有发现问题所在