Post: DataGridView
05-14-2016, 03:50 PM #1
(adsbygoogle = window.adsbygoogle || []).push({}); So what i am trying to do is saving and loading data from a datagrid view,
my save code is

DataGridView dgv = new DataGridView();
string file= "C:/Users/Felix/Documents/Data/mygrid.bin";
using (BinaryWriter bw = new BinaryWriter(File.Open(file, FileMode.Create)))
{
bw.Write(dgv.Columns.Count);
bw.Write(dgv.Rows.Count);
foreach (DataGridViewRow dgvR in dgv.Rows)
{
for (int j = 0; j < dgv.Columns.Count; ++j)
{
object val=dgvR.Cells[j].Value;
if (val == null)
{
bw.Write(false);
bw.Write(false);
}
else
{
bw.Write(true);
bw.Write(val.ToString());
}
}
}
}



my loading code is

DataGridView dgv = new DataGridView();
dgv.Rows.Clear();
string file="C:/Users/Felix/Documents/Data/mygrid.bin";
using (BinaryReader bw = new BinaryReader(File.Open(file, FileMode.Open)))
{
int n=bw.ReadInt32();
int m=bw.ReadInt32();
for(int i=0;i<m;++i)
{
dgv.Rows.Add();
for (int j = 0; j < n; ++j)
{
if (bw.ReadBoolean())
{
dgv.Rows.Cells[j].Value = bw.ReadString();
}
else bw.ReadBoolean();
}
}
}


but it doesent work, please help me


UPDATE!!! nvm i fixed it
Last edited by NMT_VadRe ; 05-14-2016 at 04:33 PM. Reason: Fixed The Problem
05-15-2016, 11:01 AM #2
Toxic
former staff
Originally posted by VadRe View Post
So what i am trying to do is saving and loading data from a datagrid view,
my save code is

DataGridView dgv = new DataGridView();
string file= "C:/Users/Felix/Documents/Data/mygrid.bin";
using (BinaryWriter bw = new BinaryWriter(File.Open(file, FileMode.Create)))
{
bw.Write(dgv.Columns.Count);
bw.Write(dgv.Rows.Count);
foreach (DataGridViewRow dgvR in dgv.Rows)
{
for (int j = 0; j < dgv.Columns.Count; ++j)
{
object val=dgvR.Cells[j].Value;
if (val == null)
{
bw.Write(false);
bw.Write(false);
}
else
{
bw.Write(true);
bw.Write(val.ToString());
}
}
}
}



my loading code is

DataGridView dgv = new DataGridView();
dgv.Rows.Clear();
string file="C:/Users/Felix/Documents/Data/mygrid.bin";
using (BinaryReader bw = new BinaryReader(File.Open(file, FileMode.Open)))
{
int n=bw.ReadInt32();
int m=bw.ReadInt32();
for(int i=0;i<m;++i)
{
dgv.Rows.Add();
for (int j = 0; j < n; ++j)
{
if (bw.ReadBoolean())
{
dgv.Rows.Cells[j].Value = bw.ReadString();
}
else bw.ReadBoolean();
}
}
}


but it doesent work, please help me


UPDATE!!! nvm i fixed it


Question seems to be answered, if you have any other question, please feel free to make another thread :p
Thread closed...

Copyright © 2024, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo