重新排序的GridView列(填充从数据库)
我有这样的方法,使用网络服务来我的桌面应用程序连接到Oracle数据库:重新排序的GridView列(填充从数据库)
public List<Persona> ListaPersona()
{
List<Persona> personas = new List<Persona>();
Persona persona;
Conexion con = new Conexion();
OracleCommand cmd = con.OracleConexion().CreateCommand();
cmd.CommandText = "select * from persona";
DataSet ds = new DataSet();
OracleDataAdapter adapter = new OracleDataAdapter(cmd);
adapter.Fill(ds);
foreach (DataRow fila in ds.Tables[0].Rows)
{
persona = new Persona();
persona.IdPersona = Int32.Parse(fila["IDPERSONA"].ToString());
persona.Rut = Int32.Parse(fila["RUT"].ToString());
persona.DigiVeri = fila["DIGIVERI"].ToString();
persona.Nombre = fila["NOMBRES"].ToString();
persona.ApPaterno = fila["APPATERNO"].ToString();
persona.ApMaterno = fila["APMATERNO"].ToString();
persona.Edad = Int32.Parse(fila["EDAD"].ToString());
persona.FechaNacimiento = fila["FECHA_NACIMIENTO"].ToString();
persona.Genero = fila["GENERO"].ToString();
persona.Correo = fila["CORREO"].ToString();
persona.Telefono = Int32.Parse(fila["TELEFONO"].ToString());
persona.Direccion = fila["DIRECCION"].ToString();
persona.Comuna = Int32.Parse(fila["COMUNA"].ToString());
persona.Contrasena = fila["CONTRASENA"].ToString();
persona.Empresa = Int32.Parse(fila["EMPRESA"].ToString());
persona.Cargo = Int32.Parse(fila["CARGO"].ToString());
persona.Activo = Int32.Parse(fila["ACTIVO"].ToString());
persona.Expositor = Int32.Parse(fila["EXPOSITOR"].ToString());
persona.Personal = Int32.Parse(fila["PERSONAL"].ToString());
persona.FechaIngreso = fila["FECHA_INGRESO"].ToString();
personas.Add(persona);
}
return personas;
}
它返回所有在系统上注册的用户列表,和我展示他们在gridview上。它显示完美的数据,但以某种随机顺序,我不知道为什么,所以我不想重新排序gridview的colums。
这是windowsform加载代码:
public testLista()
{
InitializeComponent();
WebService.ServicioClient s = new WebService.ServicioClient();
dataGridView1.DataSource = s.ListaPersona().ToList();
}
您可以手动映射。在你的DataGridView中,你会看到右上角的一个三角形。在那里你可以根据你喜欢的顺序手动映射它。 (对不起,我不能评论,因为我需要50个声望,我只有11个)
您是否知道是否有重新排序数据集的方法?我的意思是,数据集按词汇自动排序,这就是为什么即时获取数据的方式,我实际上不想 – NEURO
,这很奇怪。我使用的模式与您的模式几乎相同(获取DataTable,然后对每行进行foreach并将每个图映射到项目列表的属性),并且我总是会获得与该类相同的精确排列(在您的情况下,Persona)所以我不知道如何安排它,而是手动将它映射到窗体上的datagridview – NoobProgger
我试过dataGridView.Columns [“ColumnName”]。DisplayIndex = 1;与所有列,但它与其中一些工作。 – NEURO
记录栏是什么意思? – 2017-10-12 05:39:04
“记录”是什么意思?我没有说我相信。如果你的意思是“重新排序”,我的意思是改变列顺序。 – NEURO