Arthenius
Messages postés1182Date d'inscriptionmercredi 21 janvier 2004StatutMembreDernière intervention 6 septembre 2011
-
27 juil. 2004 à 14:42
Arthenius
Messages postés1182Date d'inscriptionmercredi 21 janvier 2004StatutMembreDernière intervention 6 septembre 2011
-
27 juil. 2004 à 17:36
Voila mon Xeme pb du jour est de créer un objet herite des datagrid avec certaines fonctions notament qd l'utilisateur sur une colonne de mon datagrid je selectionne la ligne complete (code récupérer ici : http://www.syncfusion.com/FAQ/WinForms/FAQ_c44c.asp#q689q )
ca marche nickel...par contre je voudrais que lorsque l'utilisateur appuie sur les touches fleches haut, bas, droite, gauche la selection se fasse aussi sur la ligne complete et pas de colonne en colonne, comme c'est le cas par défaut...
voila deja le debut de mon code de mon objet :
using System;
using System.Windows.Forms;
using System.Drawing;
using System.ComponentModel ;
using System.Data;
namespace Tools
{
/// <summary>
/// Description résumée de dg_Liste.
/// </summary>
[ ToolboxBitmap(@"P:\DotNet\Tools\Images\Provider.ico")]
public class dg_Liste : DataGrid
{
#region Constructeur
/// <summary>
/// Constructeur de la classe dg_Liste
/// </summary>
public dg_Liste()
{
//Definition des fonts
Font Font_Text = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
Font Font_CaptionText = new Font("Arial", 12F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic))), System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
Font Font_Header = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
//Affichage de la datagrid
this.ReadOnly = true;
this.Size = new System.Drawing.Size(472, 272);
//CaptionTEXTE
this.CaptionBackColor = Color.MediumBlue ;
this.CaptionForeColor = Color.Gold ;
this.CaptionFont = Font_CaptionText;
//Texte
this.Font = Font_Text;
//Header
this.RowHeadersVisible = false;
this.ColumnHeadersVisible = false ;
this.HeaderForeColor = System.Drawing.SystemColors.ControlText;
this.HeaderFont = Font_Header;
//Gestion des evenements
this.MouseUp +=new MouseEventHandler(dg_Liste_MouseUp);
}
#endregion
#region Sélection sur le Datagrid
private void dg_Liste_MouseUp(object sender, MouseEventArgs e)
{
//Lors d'un clique sélectionne la ligne entière
Point pt = new Point(e.X, e.Y);
DataGrid.HitTestInfo hti = this.HitTest(pt);
if(hti.Type == DataGrid.HitTestType.Cell)
{
this.CurrentCell = new DataGridCell(hti.Row, hti.Column);
this.Select(hti.Row);
}
}
#endregion
}
}