PDA

View Full Version : مشکل در datagridviwe



hassan660
سه شنبه 11 دی 1386, 17:13 عصر
می خواستم با کلیک روی button4 (جدید) اطلاعات موجود در چند تا از textbox ها به بانک اضافه بشه و در datagridviwe نمایش داده بشه.
اگه میشه درمورد حذف و ویرایش رکورد و نمایش در datagridviwe توضیح یا راهنمایی کنید.

فقط دستتون درد نکنه می خوام پروژه تحویل بدم اگه می شه ...

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Textusing System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace taxi
{
public partial class Form9 : Form
{
public Form9()
{
InitializeComponent();
}
DataSet ds = new DataSet();

private void Form9_Load(object sender, EventArgs e)
{
odbcDataAdapter1.Fill(ds);

// TODO: This line of code loads data into the 'taxi_servisDataSet3.حسابداری' table. You can move, or remove it, as needed.
this.حسابداریTableAdapter.Fill(this.taxi_s ervisDataSet3.حسابداری);
}

private void button4_Click(object sender, EventArgs e)
{


DataRow dr = ds.Tables[0].NewRow();
dr["تاریخ"] = this.label7.Text.ToString();
dr["کد"] = this.textBox1.Text.ToString();
dr["مبلغ"] = this.textBox3.Text.ToString();
dr["شرح"] = this.textBox4.Text.ToString();
ds.Tables[0].Rows.Add(dr);
dataGridView1.Update();
odbcDataAdapter1.Update(ds);




}

private void button1_Click(object sender, EventArgs e)
{
ds.Tables[0].Rows.Clear();
}

سار
سه شنبه 11 دی 1386, 17:19 عصر
از تگ Code استفاده کنید.

خانم گل
چهارشنبه 12 دی 1386, 01:53 صبح
کدت خیلی درهم برهمه من که چیزی سر در نیاوردم. ولی اگه بخوای اطلاعات رو از چندتا کنترل وارد datagrid کنی اول باید اطلاعات رو داخل database وارد کنی بعد از اونجا وارد datagrid کنی. البته روشهای دیگه ای هم هستن که این یکی راحتره. برای اینکار باید به tableAdaptor جدول مورد نظرت یه query برای insert کردن بدی که مقادیر فیلدهات بصورت پارامتر از کنترلها به database وارد بشه . بعد از ورود داده به جدول باید کل جدول رو با یه query دیگه به datagrid منتقل کنی.
کد نمونه برای زدن دکمه و وارد شدن اطلاعات هم واست می نویسم.

tblSampleTableAdapter.Insert(Convert.ToInt32(textB ox1.Text), Convert.ToDecimal(textBox2.Text), textBox3.Text, textBox4.Text);
this.tblSampleTableAdapter.Fill(this.sampleDataSet .tblSample);

واست یه برنامه نمونه نوشتم اما بدلیل مشکلاتی! نتونستم واست ضمیمه کنم .

hassan660
شنبه 15 دی 1386, 01:15 صبح
کدت خیلی درهم برهمه من که چیزی سر در نیاوردم. ولی اگه بخوای اطلاعات رو از چندتا کنترل وارد datagrid کنی اول باید اطلاعات رو داخل database وارد کنی بعد از اونجا وارد datagrid کنی. البته روشهای دیگه ای هم هستن که این یکی راحتره. برای اینکار باید به tableAdaptor جدول مورد نظرت یه query برای insert کردن بدی که مقادیر فیلدهات بصورت پارامتر از کنترلها به database وارد بشه . بعد از ورود داده به جدول باید کل جدول رو با یه query دیگه به datagrid منتقل کنی.
کد نمونه برای زدن دکمه و وارد شدن اطلاعات هم واست می نویسم.

tblSampleTableAdapter.Insert(Convert.ToInt32(textB ox1.Text), Convert.ToDecimal(textBox2.Text), textBox3.Text, textBox4.Text);
this.tblSampleTableAdapter.Fill(this.sampleDataSet .tblSample);

واست یه برنامه نمونه نوشتم اما بدلیل مشکلاتی! نتونستم واست ضمیمه کنم .

سلام با تشکر می شه یه کم بیشتر توضیح بدی من اطاعاتو تو بانک ذخیره می کنم ولی درباره انتقالش به دیتا گرید می شه بیشتر توضیح بدی
<div>
DataRow dr = ds.Tables[0].NewRow();
dr["name"] = this.textBox1.Text.ToString();
dr["lastname"] = this.textBox2.Text.ToString();
ds.Tables[0].Rows.Add(dr);
odbcDataAdapter1.Update(ds);
this.textBox1.Text="";
this.textBox2.Text="";
<div/>
با تشکر فراوان

Amir Oveisi
شنبه 15 دی 1386, 01:49 صبح
دوست عزیز یه Search کوچولو تو بخش بزنی کلی مطلب عالی هست
مخصوصا تو قسمت نمونه برنامه ها

موفق باشید

hassan660
شنبه 22 دی 1386, 01:07 صبح
هنوز مشکلم حل نشده کمک کنید بچه ها

mamali_programer
شنبه 22 دی 1386, 08:31 صبح
سلام دوست عزیز
من یک برنامه دارم که کار روی دیتابیس و نمایش آن روی دیتاگرید و نشون میده اگر خواستی به من ایمیل بزن

mahsa_999
دوشنبه 24 دی 1386, 07:29 صبح
من یه نمونه کد می ذارم امیدوارم که به دردتون بخوره


privatevoid bindDataGrid()
{
try
{
Class1 objClass1= newClass1();
objClass1.FillMyList();
dataGridView1.DataSource = objClass1.ArlClass1SL;

}
catch
{
MessageBox.Show("لیست اطلاعات را نمی توان نمایش داد. ممکن است اطلاعاتی برای نمایش وجود نداشته باشد");
}
}


که class1 اینطوری تعریف شده:



publicvoid FillMyList()
{
try
{
using (SqlConnection connection = newSqlConnection(_connectionString))
{
SqlCommand command = newSqlCommand("spSelect", connection);
command.CommandType = CommandType.StoredProcedure;
SqlDataReader dr;
connection.Open();
dr = command.ExecuteReader();
while (dr.Read())
{
BasicAsiabSD objBasicAsiabSD = newBasicAsiabSD();
objBasicAsiabSD.Id = Convert.ToInt64(dr["Id"]);
objBasicAsiabSD.Name = Convert.ToString(dr["Name"]);
this.ArlClass1SL.Add(objBasicAsiabSD);
}
dr.Close();
connection.Close();
}
}
catch (Exception exp)
{
throw;
}
}




privateArrayList _arlClass1SL;


البته این قسمت فقط یه مثاله که شما باید با توجه به فیلد های database خودتون تغییرش بدین


BasicAsiabSD objBasicAsiabSD = newBasicAsiabSD();
objBasicAsiabSD.Id = Convert.ToInt64(dr["Id"]);
objBasicAsiabSD.Name = Convert.ToString(dr["Name"]);

hassan660
سه شنبه 25 دی 1386, 16:50 عصر
سلام دوست عزیز
من یک برنامه دارم که کار روی دیتابیس و نمایش آن روی دیتاگرید و نشون میده اگر خواستی به من ایمیل بزن


دستت درد نکنه برنامه ای که برام میل کردی کارم راه انداخت امیدوارم بتونم جبران کنم البته تو ضمینه های دیگه Ai و..