begin process at 2010 02 09 20:54:57
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

.NET

 > UN AUTRE TREEVIEW

UN AUTRE TREEVIEW


 Information sur la source

Note :
7,5 / 10 - par 2 personnes
7,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :.NET Source .NET ( DotNet ) Classé sous :treeview, csharp, dotnet Niveau :Initié Date de création :01/01/2005 Date de mise à jour :05/05/2008 21:50:00 Vu / téléchargé :17 949 / 898

Auteur : geniusishere

Ecrire un message privé
Commentaire sur cette source (18)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Ce treeview possède en plus des fonctionnalités standards du treeview,
- la possibilité d'afficher des colonnes en plus de la colonne "Arbre"
- la possibilité de surligner un "chemin" depuis la racine de l'arbre vers un ou plusieurs noeuds
- la possibilité d'afficher/cacher un "header"
- de trier par colonne dans le mode affichage en grille

Source

  • Exemple d'utilisation
  • using System;
  • using System.ComponentModel;
  • using System.Diagnostics;
  • using System.Drawing;
  • using System.Windows.Forms;
  • namespace Genius.Controls
  • {
  • /// <summary>
  • /// Summary description for DemoTreeView.
  • /// </summary>
  • public class DemoTreeView : Form
  • {
  • private GeniusTreeView FTree;
  • private Panel panel1;
  • private Splitter splitter1;
  • private Panel pnlTreeview;
  • private CheckBox cbShowHeader;
  • private CheckBox cbShowTreeLines;
  • private CheckBox cbuseColumns;
  • private ContextMenu contextMenu1;
  • private MenuItem menuItem10;
  • private MenuItem menuItem11;
  • private MenuItem menuItem12;
  • private MenuItem menuItem13;
  • private MenuItem menuItem14;
  • private MenuItem menuItem15;
  • private MenuItem menuItem16;
  • private MenuItem menuItem17;
  • private MenuItem menuItem18;
  • private MenuItem menuItem19;
  • private MenuItem menuItem20;
  • private CheckBox cbCanEdit;
  • private CheckBox cbCanCheck;
  • private CheckBox cbCanUncheck;
  • private CheckBox checkBox4;
  • private System.Windows.Forms.Label label1;
  • private System.Windows.Forms.CheckBox cbHGridLine;
  • private System.Windows.Forms.CheckBox cbVGridLine;
  • /// <summary>
  • /// Required designer variable.
  • /// </summary>
  • private Container components = null;
  • public DemoTreeView()
  • {
  • //
  • // Required for Windows Form Designer support
  • //
  • InitializeComponent();
  • //
  • // TODO: Add any constructor code after InitializeComponent call
  • //
  • }
  • /// <summary>
  • /// Clean up any resources being used.
  • /// </summary>
  • protected override void Dispose( bool disposing )
  • {
  • if( disposing )
  • {
  • if(components != null)
  • {
  • components.Dispose();
  • }
  • }
  • base.Dispose( disposing );
  • }
  • #region Windows Form Designer generated code
  • /// <summary>
  • /// Required method for Designer support - do not modify
  • /// the contents of this method with the code editor.
  • /// </summary>
  • private void InitializeComponent()
  • {
  • this.panel1 = new System.Windows.Forms.Panel();
  • this.cbVGridLine = new System.Windows.Forms.CheckBox();
  • this.label1 = new System.Windows.Forms.Label();
  • this.checkBox4 = new System.Windows.Forms.CheckBox();
  • this.cbCanUncheck = new System.Windows.Forms.CheckBox();
  • this.cbCanCheck = new System.Windows.Forms.CheckBox();
  • this.cbCanEdit = new System.Windows.Forms.CheckBox();
  • this.cbuseColumns = new System.Windows.Forms.CheckBox();
  • this.cbHGridLine = new System.Windows.Forms.CheckBox();
  • this.cbShowTreeLines = new System.Windows.Forms.CheckBox();
  • this.cbShowHeader = new System.Windows.Forms.CheckBox();
  • this.splitter1 = new System.Windows.Forms.Splitter();
  • this.pnlTreeview = new System.Windows.Forms.Panel();
  • this.contextMenu1 = new System.Windows.Forms.ContextMenu();
  • this.menuItem10 = new System.Windows.Forms.MenuItem();
  • this.menuItem20 = new System.Windows.Forms.MenuItem();
  • this.menuItem11 = new System.Windows.Forms.MenuItem();
  • this.menuItem12 = new System.Windows.Forms.MenuItem();
  • this.menuItem13 = new System.Windows.Forms.MenuItem();
  • this.menuItem14 = new System.Windows.Forms.MenuItem();
  • this.menuItem15 = new System.Windows.Forms.MenuItem();
  • this.menuItem16 = new System.Windows.Forms.MenuItem();
  • this.menuItem17 = new System.Windows.Forms.MenuItem();
  • this.menuItem18 = new System.Windows.Forms.MenuItem();
  • this.menuItem19 = new System.Windows.Forms.MenuItem();
  • this.panel1.SuspendLayout();
  • this.SuspendLayout();
  • //
  • // panel1
  • //
  • this.panel1.Controls.Add(this.cbVGridLine);
  • this.panel1.Controls.Add(this.label1);
  • this.panel1.Controls.Add(this.checkBox4);
  • this.panel1.Controls.Add(this.cbCanUncheck);
  • this.panel1.Controls.Add(this.cbCanCheck);
  • this.panel1.Controls.Add(this.cbCanEdit);
  • this.panel1.Controls.Add(this.cbuseColumns);
  • this.panel1.Controls.Add(this.cbHGridLine);
  • this.panel1.Controls.Add(this.cbShowTreeLines);
  • this.panel1.Controls.Add(this.cbShowHeader);
  • this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
  • this.panel1.Location = new System.Drawing.Point(0, 0);
  • this.panel1.Name = "panel1";
  • this.panel1.Size = new System.Drawing.Size(520, 72);
  • this.panel1.TabIndex = 0;
  • //
  • // cbVGridLine
  • //
  • this.cbVGridLine.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
  • this.cbVGridLine.Location = new System.Drawing.Point(16, 56);
  • this.cbVGridLine.Name = "cbVGridLine";
  • this.cbVGridLine.Size = new System.Drawing.Size(103, 16);
  • this.cbVGridLine.TabIndex = 9;
  • this.cbVGridLine.Text = "ShowGridlines ?";
  • this.cbVGridLine.CheckedChanged += new System.EventHandler(this.cbVGridLine_CheckedChanged);
  • //
  • // label1
  • //
  • this.label1.AllowDrop = true;
  • this.label1.Location = new System.Drawing.Point(392, 24);
  • this.label1.Name = "label1";
  • this.label1.TabIndex = 8;
  • this.label1.Text = "Drag or Drop";
  • this.label1.GiveFeedback += new System.Windows.Forms.GiveFeedbackEventHandler(this.label1_GiveFeedback);
  • this.label1.DragEnter += new System.Windows.Forms.DragEventHandler(this.label1_DragEnter);
  • this.label1.DragOver += new System.Windows.Forms.DragEventHandler(this.label1_DragOver);
  • this.label1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.label1_MouseDown);
  • //
  • // checkBox4
  • //
  • this.checkBox4.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
  • this.checkBox4.Location = new System.Drawing.Point(216, 8);
  • this.checkBox4.Name = "checkBox4";
  • this.checkBox4.Size = new System.Drawing.Size(104, 16);
  • this.checkBox4.TabIndex = 7;
  • this.checkBox4.Text = "usecolumns ?";
  • //
  • // cbCanUncheck
  • //
  • this.cbCanUncheck.Checked = true;
  • this.cbCanUncheck.CheckState = System.Windows.Forms.CheckState.Checked;
  • this.cbCanUncheck.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
  • this.cbCanUncheck.Location = new System.Drawing.Point(216, 48);
  • this.cbCanUncheck.Name = "cbCanUncheck";
  • this.cbCanUncheck.Size = new System.Drawing.Size(104, 16);
  • this.cbCanUncheck.TabIndex = 6;
  • this.cbCanUncheck.Text = "CanUncheck";
  • //
  • // cbCanCheck
  • //
  • this.cbCanCheck.Checked = true;
  • this.cbCanCheck.CheckState = System.Windows.Forms.CheckState.Checked;
  • this.cbCanCheck.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
  • this.cbCanCheck.Location = new System.Drawing.Point(120, 48);
  • this.cbCanCheck.Name = "cbCanCheck";
  • this.cbCanCheck.Size = new System.Drawing.Size(104, 16);
  • this.cbCanCheck.TabIndex = 5;
  • this.cbCanCheck.Text = "CanCheck";
  • //
  • // cbCanEdit
  • //
  • this.cbCanEdit.Checked = true;
  • this.cbCanEdit.CheckState = System.Windows.Forms.CheckState.Checked;
  • this.cbCanEdit.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
  • this.cbCanEdit.Location = new System.Drawing.Point(120, 28);
  • this.cbCanEdit.Name = "cbCanEdit";
  • this.cbCanEdit.Size = new System.Drawing.Size(104, 16);
  • this.cbCanEdit.TabIndex = 4;
  • this.cbCanEdit.Text = "CanEdit";
  • //
  • // cbuseColumns
  • //
  • this.cbuseColumns.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
  • this.cbuseColumns.Location = new System.Drawing.Point(120, 8);
  • this.cbuseColumns.Name = "cbuseColumns";
  • this.cbuseColumns.Size = new System.Drawing.Size(104, 16);
  • this.cbuseColumns.TabIndex = 3;
  • this.cbuseColumns.Text = "usecolumns ?";
  • this.cbuseColumns.CheckedChanged += new System.EventHandler(this.cbuseColumns_CheckedChanged);
  • //
  • // cbHGridLine
  • //
  • this.cbHGridLine.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
  • this.cbHGridLine.Location = new System.Drawing.Point(16, 40);
  • this.cbHGridLine.Name = "cbHGridLine";
  • this.cbHGridLine.Size = new System.Drawing.Size(104, 16);
  • this.cbHGridLine.TabIndex = 2;
  • this.cbHGridLine.Text = "ShowGridlines ?";
  • this.cbHGridLine.CheckedChanged += new System.EventHandler(this.cbGridLine_CheckedChanged);
  • //
  • // cbShowTreeLines
  • //
  • this.cbShowTreeLines.Checked = true;
  • this.cbShowTreeLines.CheckState = System.Windows.Forms.CheckState.Checked;
  • this.cbShowTreeLines.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
  • this.cbShowTreeLines.Location = new System.Drawing.Point(16, 24);
  • this.cbShowTreeLines.Name = "cbShowTreeLines";
  • this.cbShowTreeLines.Size = new System.Drawing.Size(112, 16);
  • this.cbShowTreeLines.TabIndex = 1;
  • this.cbShowTreeLines.Text = "ShowTreeLines ?";
  • this.cbShowTreeLines.CheckedChanged += new System.EventHandler(this.cbShowTreeLines_CheckedChanged);
  • //
  • // cbShowHeader
  • //
  • this.cbShowHeader.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
  • this.cbShowHeader.Location = new System.Drawing.Point(16, 8);
  • this.cbShowHeader.Name = "cbShowHeader";
  • this.cbShowHeader.Size = new System.Drawing.Size(104, 16);
  • this.cbShowHeader.TabIndex = 0;
  • this.cbShowHeader.Text = "ShowHeader ?";
  • this.cbShowHeader.CheckedChanged += new System.EventHandler(this.cbShowHeader_CheckedChanged);
  • //
  • // splitter1
  • //
  • this.splitter1.Dock = System.Windows.Forms.DockStyle.Top;
  • this.splitter1.Location = new System.Drawing.Point(0, 72);
  • this.splitter1.Name = "splitter1";
  • this.splitter1.Size = new System.Drawing.Size(520, 3);
  • this.splitter1.TabIndex = 1;
  • this.splitter1.TabStop = false;
  • //
  • // pnlTreeview
  • //
  • this.pnlTreeview.Dock = System.Windows.Forms.DockStyle.Fill;
  • this.pnlTreeview.Location = new System.Drawing.Point(0, 75);
  • this.pnlTreeview.Name = "pnlTreeview";
  • this.pnlTreeview.Size = new System.Drawing.Size(520, 322);
  • this.pnlTreeview.TabIndex = 2;
  • //
  • // contextMenu1
  • //
  • this.contextMenu1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
  • this.menuItem10});
  • //
  • // menuItem10
  • //
  • this.menuItem10.Index = 0;
  • this.menuItem10.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
  • this.menuItem20,
  • this.menuItem11,
  • this.menuItem12,
  • this.menuItem13,
  • this.menuItem14,
  • this.menuItem15,
  • this.menuItem16,
  • this.menuItem17,
  • this.menuItem18,
  • this.menuItem19});
  • this.menuItem10.Text = "&Voir";
  • //
  • // menuItem20
  • //
  • this.menuItem20.Checked = true;
  • this.menuItem20.Index = 0;
  • this.menuItem20.Text = "Colonne 0";
  • this.menuItem20.Click += new System.EventHandler(this.ColonneClick);
  • //
  • // menuItem11
  • //
  • this.menuItem11.Checked = true;
  • this.menuItem11.Index = 1;
  • this.menuItem11.Text = "Colonne 1";
  • this.menuItem11.Click += new System.EventHandler(this.ColonneClick);
  • //
  • // menuItem12
  • //
  • this.menuItem12.Checked = true;
  • this.menuItem12.Index = 2;
  • this.menuItem12.Text = "Colonne 2";
  • this.menuItem12.Click += new System.EventHandler(this.ColonneClick);
  • //
  • // menuItem13
  • //
  • this.menuItem13.Checked = true;
  • this.menuItem13.Index = 3;
  • this.menuItem13.Text = "Colonne 3";
  • this.menuItem13.Click += new System.EventHandler(this.ColonneClick);
  • //
  • // menuItem14
  • //
  • this.menuItem14.Checked = true;
  • this.menuItem14.Index = 4;
  • this.menuItem14.Text = "Colonne 4";
  • this.menuItem14.Click += new System.EventHandler(this.ColonneClick);
  • //
  • // menuItem15
  • //
  • this.menuItem15.Checked = true;
  • this.menuItem15.Index = 5;
  • this.menuItem15.Text = "Colonne 5";
  • this.menuItem15.Click += new System.EventHandler(this.ColonneClick);
  • //
  • // menuItem16
  • //
  • this.menuItem16.Checked = true;
  • this.menuItem16.Index = 6;
  • this.menuItem16.Text = "Colonne 6";
  • this.menuItem16.Click += new System.EventHandler(this.ColonneClick);
  • //
  • // menuItem17
  • //
  • this.menuItem17.Checked = true;
  • this.menuItem17.Index = 7;
  • this.menuItem17.Text = "Colonne 7";
  • this.menuItem17.Click += new System.EventHandler(this.ColonneClick);
  • //
  • // menuItem18
  • //
  • this.menuItem18.Checked = true;
  • this.menuItem18.Index = 8;
  • this.menuItem18.Text = "Colonne 8";
  • this.menuItem18.Click += new System.EventHandler(this.ColonneClick);
  • //
  • // menuItem19
  • //
  • this.menuItem19.Checked = true;
  • this.menuItem19.Index = 9;
  • this.menuItem19.Text = "Colonne 9";
  • this.menuItem19.Click += new System.EventHandler(this.ColonneClick);
  • //
  • // DemoTreeView
  • //
  • this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
  • this.BackColor = System.Drawing.SystemColors.Control;
  • this.ClientSize = new System.Drawing.Size(520, 397);
  • this.Controls.Add(this.pnlTreeview);
  • this.Controls.Add(this.splitter1);
  • this.Controls.Add(this.panel1);
  • this.Name = "DemoTreeView";
  • this.Text = "DemoTreeView";
  • this.Load += new System.EventHandler(this.DemoTreeView_Load);
  • this.panel1.ResumeLayout(false);
  • this.ResumeLayout(false);
  • }
  • #endregion
  • private void DemoTreeView_Load(object sender, EventArgs e)
  • {
  • FTree = new GeniusTreeView();
  • FTree.KeyDown +=new KeyEventHandler(FTree_KeyDown);
  • FTree.AllowDrop = true;
  • FTree.ContextMenu = this.contextMenu1;
  • FTree.Dock = DockStyle.Fill;
  • this.pnlTreeview.Controls.Add(FTree);
  • FTree.BeginUpdate();
  • try
  • {
  • FTree.OnBeginCheck +=new OnCheckDelegate(FTree_OnBeginCheck);
  • FTree.OnBeginCollapse +=new OnCollapseDelegate(FTree_OnBeginCollapse);
  • FTree.OnBeginExpand +=new OnExpandDelegate(FTree_OnBeginExpand);
  • FTree.OnBeginUnCheck +=new OnUnCheckDelegate(FTree_OnBeginUnCheck);
  • FTree.OnCanEdit +=new OnCanEditDelegate(FTree_OnCanEdit);
  • FTree.OnGetNodeText +=new OnGetNodeTextDelegate(FTree_OnGetNodeText);
  • for(int i = 0; i < 10; i++)
  • {
  • INode n = FTree.Add(null, new DataNode(i));
  • if (i % 2 == 0)
  • n.State |= NodeState.HasCheck;
  • n.Text = "Node " + i.ToString();
  • for(int j = 0; j < 10; j++)
  • {
  • INode n1 = FTree.Add(n, new DataNode(j));
  • if (j % 2 == 0)
  • n1.State |= NodeState.HasCheck;
  • n1.Text = "Node " + i.ToString() + j.ToString();
  • if (i== 2 && j == 2)
  • n1.State |= NodeState.Signaled;
  • if (j == 9)
  • FTree.SetVisibleNode(n1, false);
  • //n1.State &= ~NodeState.Visible;
  • }
  • GeniusTreeViewColonne col = FTree.Header.Add();
  • col.Titre = "Colonne : " + i.ToString();
  • if (i == 0)
  • {
  • col.BackColor = new GeniusLinearGradientBrush(Color.FromArgb(247,247,247));
  • }
  • else if (i % 2 == 0)
  • col.BackColor = new GeniusLinearGradientBrush(Color.White, Color.LightBlue, 90);
  • else
  • col.BackColor = new GeniusLinearGradientBrush(Color.Beige);
  • }
  • }
  • finally
  • {
  • FTree.EndUpdate();
  • }
  • }
  • private void cbShowHeader_CheckedChanged(object sender, EventArgs e)
  • {
  • FTree.ShowHeader = cbShowHeader.Checked;
  • }
  • private void cbShowTreeLines_CheckedChanged(object sender, EventArgs e)
  • {
  • if (cbShowTreeLines.Checked)
  • FTree.PaintOptions |= PaintOptionsEnum.ShowTreeLines;
  • else
  • FTree.PaintOptions &= (~PaintOptionsEnum.ShowTreeLines);
  • }
  • private void cbGridLine_CheckedChanged(object sender, EventArgs e)
  • {
  • if (cbHGridLine.Checked)
  • FTree.PaintOptions |= (PaintOptionsEnum.ShowHorzGridLines);
  • else
  • FTree.PaintOptions &= ~(PaintOptionsEnum.ShowHorzGridLines);
  • }
  • private void cbuseColumns_CheckedChanged(object sender, EventArgs e)
  • {
  • FTree.UseColumns = cbuseColumns.Checked;
  • }
  • private void ColonneClick(object sender, EventArgs e)
  • {
  • string aText = (sender as MenuItem).Text;
  • (sender as MenuItem).Checked = !(sender as MenuItem).Checked;
  • aText = aText.Substring(8);
  • int aIndex = int.Parse(aText);
  • FTree.Header[aIndex].Visible = (sender as MenuItem).Checked;
  • }
  • private void FTree_OnBeginCheck(GeniusTreeView Sender, CheckEventArgs e)
  • {
  • e.CanCheck = cbCanCheck.Checked;
  • }
  • private void FTree_OnBeginCollapse(GeniusTreeView Sender, CollapseEventArgs e)
  • {
  • }
  • private void FTree_OnBeginExpand(GeniusTreeView Sender, ExpandEventArgs e)
  • {
  • }
  • private void FTree_OnBeginUnCheck(GeniusTreeView Sender, UnCheckEventArgs e)
  • {
  • e.CanUnCheck = cbCanUncheck.Checked;
  • }
  • private void FTree_OnCanEdit(GeniusTreeView Sender, CanEditEventArgs e)
  • {
  • e.CanEdit = cbCanEdit.Checked;
  • }
  • private void label1_DragEnter(object sender, System.Windows.Forms.DragEventArgs e)
  • {
  • e.Effect = DragDropEffects.Copy;
  • Debug.WriteLine("label1_drageenter = " + e.Effect.ToString() + ":" + e.AllowedEffect.ToString());
  • }
  • private void label1_DragOver(object sender, System.Windows.Forms.DragEventArgs e)
  • {
  • e.Effect = DragDropEffects.Copy;
  • }
  • private void label1_GiveFeedback(object sender, System.Windows.Forms.GiveFeedbackEventArgs e)
  • {
  • Debug.WriteLine("label1_givefeedback = " + e.Effect.ToString());
  • //e.Effect = DragDropEffects.Link;
  • }
  • private void label1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
  • {
  • label1.DoDragDrop(label1, DragDropEffects.All);
  • }
  • private void FTree_KeyDown(object sender, KeyEventArgs e)
  • {
  • if (e.KeyCode == Keys.Delete)
  • {
  • FTree.Delete(FTree.SelectedNode);
  • }
  • }
  • private void FTree_OnGetNodeText(GeniusTreeView Sender, NodeTextEventArgs e)
  • {
  • if (e.ColIndex == 1)
  • {
  • e.Text = ((DataNode)e.Node.Data).Index.ToString();
  • }
  • }
  • private void cbVGridLine_CheckedChanged(object sender, System.EventArgs e)
  • {
  • if (cbVGridLine.Checked)
  • FTree.PaintOptions |= (PaintOptionsEnum.ShowVertGridLines);
  • else
  • FTree.PaintOptions &= ~(PaintOptionsEnum.ShowVertGridLines);
  • }
  • }
  • class DataNode
  • {
  • public int Index;
  • public DataNode(int n)
  • {
  • Index = n;
  • }
  • }
  • }
Exemple d'utilisation

using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Drawing;
using System.Windows.Forms;

namespace Genius.Controls
{
	/// <summary>
	/// Summary description for DemoTreeView.
	/// </summary>
	public class DemoTreeView : Form
	{
		private GeniusTreeView FTree;

		private Panel panel1;
		private Splitter splitter1;
		private Panel pnlTreeview;
		private CheckBox cbShowHeader;
		private CheckBox cbShowTreeLines;
		private CheckBox cbuseColumns;
		private ContextMenu contextMenu1;
		private MenuItem menuItem10;
		private MenuItem menuItem11;
		private MenuItem menuItem12;
		private MenuItem menuItem13;
		private MenuItem menuItem14;
		private MenuItem menuItem15;
		private MenuItem menuItem16;
		private MenuItem menuItem17;
		private MenuItem menuItem18;
		private MenuItem menuItem19;
		private MenuItem menuItem20;
		private CheckBox cbCanEdit;
		private CheckBox cbCanCheck;
		private CheckBox cbCanUncheck;
		private CheckBox checkBox4;
		private System.Windows.Forms.Label label1;
		private System.Windows.Forms.CheckBox cbHGridLine;
		private System.Windows.Forms.CheckBox cbVGridLine;
		/// <summary>
		/// Required designer variable.
		/// </summary>
		private Container components = null;

		public DemoTreeView()
		{
			//
			// Required for Windows Form Designer support
			//
			InitializeComponent();

			//
			// TODO: Add any constructor code after InitializeComponent call
			//
		}

		/// <summary>
		/// Clean up any resources being used.
		/// </summary>
		protected override void Dispose( bool disposing )
		{
			if( disposing )
			{
				if(components != null)
				{
					components.Dispose();
				}
			}
			base.Dispose( disposing );
		}

		#region Windows Form Designer generated code
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{
			this.panel1 = new System.Windows.Forms.Panel();
			this.cbVGridLine = new System.Windows.Forms.CheckBox();
			this.label1 = new System.Windows.Forms.Label();
			this.checkBox4 = new System.Windows.Forms.CheckBox();
			this.cbCanUncheck = new System.Windows.Forms.CheckBox();
			this.cbCanCheck = new System.Windows.Forms.CheckBox();
			this.cbCanEdit = new System.Windows.Forms.CheckBox();
			this.cbuseColumns = new System.Windows.Forms.CheckBox();
			this.cbHGridLine = new System.Windows.Forms.CheckBox();
			this.cbShowTreeLines = new System.Windows.Forms.CheckBox();
			this.cbShowHeader = new System.Windows.Forms.CheckBox();
			this.splitter1 = new System.Windows.Forms.Splitter();
			this.pnlTreeview = new System.Windows.Forms.Panel();
			this.contextMenu1 = new System.Windows.Forms.ContextMenu();
			this.menuItem10 = new System.Windows.Forms.MenuItem();
			this.menuItem20 = new System.Windows.Forms.MenuItem();
			this.menuItem11 = new System.Windows.Forms.MenuItem();
			this.menuItem12 = new System.Windows.Forms.MenuItem();
			this.menuItem13 = new System.Windows.Forms.MenuItem();
			this.menuItem14 = new System.Windows.Forms.MenuItem();
			this.menuItem15 = new System.Windows.Forms.MenuItem();
			this.menuItem16 = new System.Windows.Forms.MenuItem();
			this.menuItem17 = new System.Windows.Forms.MenuItem();
			this.menuItem18 = new System.Windows.Forms.MenuItem();
			this.menuItem19 = new System.Windows.Forms.MenuItem();
			this.panel1.SuspendLayout();
			this.SuspendLayout();
			// 
			// panel1
			// 
			this.panel1.Controls.Add(this.cbVGridLine);
			this.panel1.Controls.Add(this.label1);
			this.panel1.Controls.Add(this.checkBox4);
			this.panel1.Controls.Add(this.cbCanUncheck);
			this.panel1.Controls.Add(this.cbCanCheck);
			this.panel1.Controls.Add(this.cbCanEdit);
			this.panel1.Controls.Add(this.cbuseColumns);
			this.panel1.Controls.Add(this.cbHGridLine);
			this.panel1.Controls.Add(this.cbShowTreeLines);
			this.panel1.Controls.Add(this.cbShowHeader);
			this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
			this.panel1.Location = new System.Drawing.Point(0, 0);
			this.panel1.Name = "panel1";
			this.panel1.Size = new System.Drawing.Size(520, 72);
			this.panel1.TabIndex = 0;
			// 
			// cbVGridLine
			// 
			this.cbVGridLine.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
			this.cbVGridLine.Location = new System.Drawing.Point(16, 56);
			this.cbVGridLine.Name = "cbVGridLine";
			this.cbVGridLine.Size = new System.Drawing.Size(103, 16);
			this.cbVGridLine.TabIndex = 9;
			this.cbVGridLine.Text = "ShowGridlines ?";
			this.cbVGridLine.CheckedChanged += new System.EventHandler(this.cbVGridLine_CheckedChanged);
			// 
			// label1
			// 
			this.label1.AllowDrop = true;
			this.label1.Location = new System.Drawing.Point(392, 24);
			this.label1.Name = "label1";
			this.label1.TabIndex = 8;
			this.label1.Text = "Drag or Drop";
			this.label1.GiveFeedback += new System.Windows.Forms.GiveFeedbackEventHandler(this.label1_GiveFeedback);
			this.label1.DragEnter += new System.Windows.Forms.DragEventHandler(this.label1_DragEnter);
			this.label1.DragOver += new System.Windows.Forms.DragEventHandler(this.label1_DragOver);
			this.label1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.label1_MouseDown);
			// 
			// checkBox4
			// 
			this.checkBox4.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
			this.checkBox4.Location = new System.Drawing.Point(216, 8);
			this.checkBox4.Name = "checkBox4";
			this.checkBox4.Size = new System.Drawing.Size(104, 16);
			this.checkBox4.TabIndex = 7;
			this.checkBox4.Text = "usecolumns ?";
			// 
			// cbCanUncheck
			// 
			this.cbCanUncheck.Checked = true;
			this.cbCanUncheck.CheckState = System.Windows.Forms.CheckState.Checked;
			this.cbCanUncheck.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
			this.cbCanUncheck.Location = new System.Drawing.Point(216, 48);
			this.cbCanUncheck.Name = "cbCanUncheck";
			this.cbCanUncheck.Size = new System.Drawing.Size(104, 16);
			this.cbCanUncheck.TabIndex = 6;
			this.cbCanUncheck.Text = "CanUncheck";
			// 
			// cbCanCheck
			// 
			this.cbCanCheck.Checked = true;
			this.cbCanCheck.CheckState = System.Windows.Forms.CheckState.Checked;
			this.cbCanCheck.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
			this.cbCanCheck.Location = new System.Drawing.Point(120, 48);
			this.cbCanCheck.Name = "cbCanCheck";
			this.cbCanCheck.Size = new System.Drawing.Size(104, 16);
			this.cbCanCheck.TabIndex = 5;
			this.cbCanCheck.Text = "CanCheck";
			// 
			// cbCanEdit
			// 
			this.cbCanEdit.Checked = true;
			this.cbCanEdit.CheckState = System.Windows.Forms.CheckState.Checked;
			this.cbCanEdit.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
			this.cbCanEdit.Location = new System.Drawing.Point(120, 28);
			this.cbCanEdit.Name = "cbCanEdit";
			this.cbCanEdit.Size = new System.Drawing.Size(104, 16);
			this.cbCanEdit.TabIndex = 4;
			this.cbCanEdit.Text = "CanEdit";
			// 
			// cbuseColumns
			// 
			this.cbuseColumns.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
			this.cbuseColumns.Location = new System.Drawing.Point(120, 8);
			this.cbuseColumns.Name = "cbuseColumns";
			this.cbuseColumns.Size = new System.Drawing.Size(104, 16);
			this.cbuseColumns.TabIndex = 3;
			this.cbuseColumns.Text = "usecolumns ?";
			this.cbuseColumns.CheckedChanged += new System.EventHandler(this.cbuseColumns_CheckedChanged);
			// 
			// cbHGridLine
			// 
			this.cbHGridLine.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
			this.cbHGridLine.Location = new System.Drawing.Point(16, 40);
			this.cbHGridLine.Name = "cbHGridLine";
			this.cbHGridLine.Size = new System.Drawing.Size(104, 16);
			this.cbHGridLine.TabIndex = 2;
			this.cbHGridLine.Text = "ShowGridlines ?";
			this.cbHGridLine.CheckedChanged += new System.EventHandler(this.cbGridLine_CheckedChanged);
			// 
			// cbShowTreeLines
			// 
			this.cbShowTreeLines.Checked = true;
			this.cbShowTreeLines.CheckState = System.Windows.Forms.CheckState.Checked;
			this.cbShowTreeLines.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
			this.cbShowTreeLines.Location = new System.Drawing.Point(16, 24);
			this.cbShowTreeLines.Name = "cbShowTreeLines";
			this.cbShowTreeLines.Size = new System.Drawing.Size(112, 16);
			this.cbShowTreeLines.TabIndex = 1;
			this.cbShowTreeLines.Text = "ShowTreeLines ?";
			this.cbShowTreeLines.CheckedChanged += new System.EventHandler(this.cbShowTreeLines_CheckedChanged);
			// 
			// cbShowHeader
			// 
			this.cbShowHeader.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
			this.cbShowHeader.Location = new System.Drawing.Point(16, 8);
			this.cbShowHeader.Name = "cbShowHeader";
			this.cbShowHeader.Size = new System.Drawing.Size(104, 16);
			this.cbShowHeader.TabIndex = 0;
			this.cbShowHeader.Text = "ShowHeader ?";
			this.cbShowHeader.CheckedChanged += new System.EventHandler(this.cbShowHeader_CheckedChanged);
			// 
			// splitter1
			// 
			this.splitter1.Dock = System.Windows.Forms.DockStyle.Top;
			this.splitter1.Location = new System.Drawing.Point(0, 72);
			this.splitter1.Name = "splitter1";
			this.splitter1.Size = new System.Drawing.Size(520, 3);
			this.splitter1.TabIndex = 1;
			this.splitter1.TabStop = false;
			// 
			// pnlTreeview
			// 
			this.pnlTreeview.Dock = System.Windows.Forms.DockStyle.Fill;
			this.pnlTreeview.Location = new System.Drawing.Point(0, 75);
			this.pnlTreeview.Name = "pnlTreeview";
			this.pnlTreeview.Size = new System.Drawing.Size(520, 322);
			this.pnlTreeview.TabIndex = 2;
			// 
			// contextMenu1
			// 
			this.contextMenu1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
																						 this.menuItem10});
			// 
			// menuItem10
			// 
			this.menuItem10.Index = 0;
			this.menuItem10.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
																					   this.menuItem20,
																					   this.menuItem11,
																					   this.menuItem12,
																					   this.menuItem13,
																					   this.menuItem14,
																					   this.menuItem15,
																					   this.menuItem16,
																					   this.menuItem17,
																					   this.menuItem18,
																					   this.menuItem19});
			this.menuItem10.Text = "&Voir";
			// 
			// menuItem20
			// 
			this.menuItem20.Checked = true;
			this.menuItem20.Index = 0;
			this.menuItem20.Text = "Colonne 0";
			this.menuItem20.Click += new System.EventHandler(this.ColonneClick);
			// 
			// menuItem11
			// 
			this.menuItem11.Checked = true;
			this.menuItem11.Index = 1;
			this.menuItem11.Text = "Colonne 1";
			this.menuItem11.Click += new System.EventHandler(this.ColonneClick);
			// 
			// menuItem12
			// 
			this.menuItem12.Checked = true;
			this.menuItem12.Index = 2;
			this.menuItem12.Text = "Colonne 2";
			this.menuItem12.Click += new System.EventHandler(this.ColonneClick);
			// 
			// menuItem13
			// 
			this.menuItem13.Checked = true;
			this.menuItem13.Index = 3;
			this.menuItem13.Text = "Colonne 3";
			this.menuItem13.Click += new System.EventHandler(this.ColonneClick);
			// 
			// menuItem14
			// 
			this.menuItem14.Checked = true;
			this.menuItem14.Index = 4;
			this.menuItem14.Text = "Colonne 4";
			this.menuItem14.Click += new System.EventHandler(this.ColonneClick);
			// 
			// menuItem15
			// 
			this.menuItem15.Checked = true;
			this.menuItem15.Index = 5;
			this.menuItem15.Text = "Colonne 5";
			this.menuItem15.Click += new System.EventHandler(this.ColonneClick);
			// 
			// menuItem16
			// 
			this.menuItem16.Checked = true;
			this.menuItem16.Index = 6;
			this.menuItem16.Text = "Colonne 6";
			this.menuItem16.Click += new System.EventHandler(this.ColonneClick);
			// 
			// menuItem17
			// 
			this.menuItem17.Checked = true;
			this.menuItem17.Index = 7;
			this.menuItem17.Text = "Colonne 7";
			this.menuItem17.Click += new System.EventHandler(this.ColonneClick);
			// 
			// menuItem18
			// 
			this.menuItem18.Checked = true;
			this.menuItem18.Index = 8;
			this.menuItem18.Text = "Colonne 8";
			this.menuItem18.Click += new System.EventHandler(this.ColonneClick);
			// 
			// menuItem19
			// 
			this.menuItem19.Checked = true;
			this.menuItem19.Index = 9;
			this.menuItem19.Text = "Colonne 9";
			this.menuItem19.Click += new System.EventHandler(this.ColonneClick);
			// 
			// DemoTreeView
			// 
			this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
			this.BackColor = System.Drawing.SystemColors.Control;
			this.ClientSize = new System.Drawing.Size(520, 397);
			this.Controls.Add(this.pnlTreeview);
			this.Controls.Add(this.splitter1);
			this.Controls.Add(this.panel1);
			this.Name = "DemoTreeView";
			this.Text = "DemoTreeView";
			this.Load += new System.EventHandler(this.DemoTreeView_Load);
			this.panel1.ResumeLayout(false);
			this.ResumeLayout(false);

		}
		#endregion

		private void DemoTreeView_Load(object sender, EventArgs e)
		{
			
			FTree = new GeniusTreeView();
			FTree.KeyDown +=new KeyEventHandler(FTree_KeyDown);
			FTree.AllowDrop = true;
			FTree.ContextMenu = this.contextMenu1;
			FTree.Dock = DockStyle.Fill;
			this.pnlTreeview.Controls.Add(FTree);
			FTree.BeginUpdate();
			try
			{
				FTree.OnBeginCheck +=new OnCheckDelegate(FTree_OnBeginCheck);
				FTree.OnBeginCollapse +=new OnCollapseDelegate(FTree_OnBeginCollapse);
				FTree.OnBeginExpand +=new OnExpandDelegate(FTree_OnBeginExpand);
				FTree.OnBeginUnCheck +=new OnUnCheckDelegate(FTree_OnBeginUnCheck);
				FTree.OnCanEdit +=new OnCanEditDelegate(FTree_OnCanEdit);
				FTree.OnGetNodeText +=new OnGetNodeTextDelegate(FTree_OnGetNodeText);
				for(int i = 0; i < 10; i++)
				{
					INode n = FTree.Add(null, new DataNode(i));
					if (i % 2 == 0)
						n.State |= NodeState.HasCheck;
					n.Text = "Node " + i.ToString();
					for(int j = 0; j < 10; j++)
					{
						INode n1 = FTree.Add(n, new DataNode(j));
						if (j % 2 == 0)
							n1.State |= NodeState.HasCheck;
						n1.Text = "Node " + i.ToString() + j.ToString();
						if (i== 2 && j == 2)
							n1.State |= NodeState.Signaled;
						if (j == 9)
							FTree.SetVisibleNode(n1, false);
							//n1.State &= ~NodeState.Visible;
					}
					GeniusTreeViewColonne col = FTree.Header.Add();
					col.Titre = "Colonne : " + i.ToString();
					if (i == 0)
					{
						col.BackColor = new GeniusLinearGradientBrush(Color.FromArgb(247,247,247));						
					}
					else if (i % 2 == 0)
						col.BackColor = new GeniusLinearGradientBrush(Color.White, Color.LightBlue, 90);
					else
						col.BackColor = new GeniusLinearGradientBrush(Color.Beige);
				}
			}
			finally
			{
				FTree.EndUpdate();
			}
		}

		private void cbShowHeader_CheckedChanged(object sender, EventArgs e)
		{
			FTree.ShowHeader = cbShowHeader.Checked;
		}

		private void cbShowTreeLines_CheckedChanged(object sender, EventArgs e)
		{
			if (cbShowTreeLines.Checked)
				FTree.PaintOptions |= PaintOptionsEnum.ShowTreeLines;
			else
				FTree.PaintOptions &= (~PaintOptionsEnum.ShowTreeLines);
		}

		private void cbGridLine_CheckedChanged(object sender, EventArgs e)
		{
			if (cbHGridLine.Checked)
				FTree.PaintOptions |= (PaintOptionsEnum.ShowHorzGridLines);
			else
				FTree.PaintOptions &= ~(PaintOptionsEnum.ShowHorzGridLines);
		}

		private void cbuseColumns_CheckedChanged(object sender, EventArgs e)
		{
			FTree.UseColumns = cbuseColumns.Checked;
		}

		private void ColonneClick(object sender, EventArgs e)
		{
			string aText = (sender as MenuItem).Text;
			(sender as MenuItem).Checked = !(sender as MenuItem).Checked;
			aText = aText.Substring(8);
			int aIndex = int.Parse(aText);
			FTree.Header[aIndex].Visible = (sender as MenuItem).Checked;
		}

		private void FTree_OnBeginCheck(GeniusTreeView Sender, CheckEventArgs e)
		{
			e.CanCheck = cbCanCheck.Checked;
		}

		private void FTree_OnBeginCollapse(GeniusTreeView Sender, CollapseEventArgs e)
		{

		}

		private void FTree_OnBeginExpand(GeniusTreeView Sender, ExpandEventArgs e)
		{

		}

		private void FTree_OnBeginUnCheck(GeniusTreeView Sender, UnCheckEventArgs e)
		{
			e.CanUnCheck = cbCanUncheck.Checked;
		}

		private void FTree_OnCanEdit(GeniusTreeView Sender, CanEditEventArgs e)
		{
			e.CanEdit = cbCanEdit.Checked;
		}

		private void label1_DragEnter(object sender, System.Windows.Forms.DragEventArgs e)
		{

			e.Effect = DragDropEffects.Copy;
			Debug.WriteLine("label1_drageenter = " + e.Effect.ToString() + ":" + e.AllowedEffect.ToString());
		}

		private void label1_DragOver(object sender, System.Windows.Forms.DragEventArgs e)
		{
			e.Effect = DragDropEffects.Copy;
		}

		private void label1_GiveFeedback(object sender, System.Windows.Forms.GiveFeedbackEventArgs e)
		{
			Debug.WriteLine("label1_givefeedback = " + e.Effect.ToString());
			//e.Effect = DragDropEffects.Link;
		}

		private void label1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
		{
			label1.DoDragDrop(label1, DragDropEffects.All);
		}

		private void FTree_KeyDown(object sender, KeyEventArgs e)
		{
			if (e.KeyCode == Keys.Delete)
			{
				FTree.Delete(FTree.SelectedNode);
			}
		}

		private void FTree_OnGetNodeText(GeniusTreeView Sender, NodeTextEventArgs e)
		{
			if (e.ColIndex == 1)
			{
				e.Text = ((DataNode)e.Node.Data).Index.ToString();
			}
		}

		private void cbVGridLine_CheckedChanged(object sender, System.EventArgs e)
		{
			if (cbVGridLine.Checked)
				FTree.PaintOptions |= (PaintOptionsEnum.ShowVertGridLines);
			else
				FTree.PaintOptions &= ~(PaintOptionsEnum.ShowVertGridLines);
		}
	}
	class DataNode
	{
		public int Index;
		public DataNode(int n)
		{
			Index = n;
		}
	}
}

 Conclusion

cette version 0.1.6
- le drag'n drop conserve encore quelques bugs
- pas de multi-selection

nb: les sources seront disponible lors de la version 1.0

une version beaucoup plus récente se trouve sur codeplex :
http://www.codeplex.com/geniustreeview/

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  • Genius.Controls.dllTélécharger ce fichier [Réservé aux membres club]126 976 octets

Télécharger le zip


 Historique

05 mai 2008 21:50:00 :
mis à jour du lien vers codeplex http://www.codeplex.com/geniustreeview/

 Sources du même auteur

Source avec Zip Source avec une capture Source .NET (Dotnet) TABPAGE STYLE VS2005
Source .NET (Dotnet) UN MINI LEXER À PARTIR DE VOTRE ENUMÉRATION

 Sources de la même categorie

Source avec Zip CHAT SERVER-CLIENT par abderrahmenbilog
Source avec Zip Source avec une capture Source .NET (Dotnet) SIMULATION DE CONSOLE POUR WINDOWS MOBILE par originalcompo
Source avec Zip Source .NET (Dotnet) BASE DE DONNÉES EN XML par DanMor498
Source avec Zip Source avec une capture Source .NET (Dotnet) SIMPLECONV - APPLICATION DE CONVERSION MONÉTAIRE AVEC TAUX E... par Jeffrey_
Source avec Zip Source .NET (Dotnet) TRAITEUR D'IMAGE (MINI) par ycyril

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture Source .NET (Dotnet) RECHERCHE ET GESTION DE FICHIERS PERSONNALISÉES par JeremyLecouvert
Source avec Zip Source avec une capture Source .NET (Dotnet) LANCER UNE FEUILLE FILLE MDI UNE ET UNE SEULE FOIS par anadeveloppeur
Source avec Zip Source avec une capture Source .NET (Dotnet) CRÉATION D'UN ACTIVEX EN UTILSANT UN USERCONTROL DOTNET CSHA... par AVerhamme
Source .NET (Dotnet) LINQ TO XML & LA MANIPULATION DE DONNÉES EN XML AVEC UNE APP... par driver
Source avec Zip Source avec une capture Source .NET (Dotnet) QCM AVEC TIMER par zahenianis

Commentaires et avis

Commentaire de scoubidou944 le 02/01/2005 03:28:57

et Elle sera la quand ?

j'avais déjà adapté qql chose de similaire mais moins poussé sur :
http://www.csharpfr.com/code.aspx?id=27623

Commentaire de scoubidou944 le 02/01/2005 03:30:48

tiens pdt que J pense, parce que moi ca bug et c pas mon truc d'écrire des composants, on peut rajouter des progress bar ou combo box dans un Node ou item ?

Et un truc bete mais qui peut servir lorsque l'on peut pas avoir assez de place dans le titre de la colonne, le rajout d'une icone

;p

Commentaire de scoubidou944 le 02/01/2005 03:35:46

il manque dans le zip juste après le constructeur 'DemoTreeView':

/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.Run(new DemoTreeView());
}

en  tout cas je dis bravo C impressionnant comme travail.

Commentaire de geniusishere le 02/01/2005 11:37:31

tes propositions sont les bienvenues....

Via l'interface ITreeViewEdit, on peut mettre n'importe quel composant pour l'édition

chaque "cellule" étant redessinable, on peut aussi y dessiner une barre de progression

j'ai écris un petit article sur ce treeview
http://blogs.developpeur.org/pierrick/archive/2005/01/01/3855.aspx

et pour répondre à ta première question, la version 1.0 pour quand ?
je n'ai pas de "dead line", mais en 2005 je pense. Je developpe ce composant sur mon temps libre ;-)

Commentaire de scoubidou944 le 02/01/2005 13:15:47

il est génial ce composant, j'v foutre le mien à la poubelle car il bug trop, j'aurais juste besoin d'un truc,
c pouvoir définir le champ ForeColor pour chaque cellule.

Pdt que J pense, la c purement avis perso mais avec l'héritage, je trouve un peu choquant d'avori des methodes en français et d'autre en anglais. Tout le monde est habitué en tant que développeur à 'pisser' du code anglais ;p

Commentaire de ypikai le 25/02/2005 11:17:27

Est il possible avec ton composant d'interdire à l'utilisateur de sélectionner les libellés des noeuds ?

Et aussi d'interdire totalement le Drag N Drop ?
Merki

Commentaire de cricri67 le 25/02/2005 11:49:56

Je suis super débutant en C#.
Comment tu fais pour récupérer le texte du node sélectionné ??

Commentaire de scoubidou944 le 25/02/2005 19:17:20

voici la derniere version :

http://www.gotdotnet.com/Workspaces/Workspace.aspx?id=7ef34d38-d86e-497d-bc15-33edc8826729

avec le Blog du createur ;p
http://blogs.developpeur.org/pierrick/archive/2005/02/19/4700.aspx

Commentaire de geniusishere le 25/02/2005 21:21:34

cool scoubidou944,

je plus rien à faire....

Commentaire de scoubidou944 le 01/03/2005 18:16:30

Je dirais juste que la 0.7 es t sortie ;p

par contre, les noms de fonction mélangé Fr / Anglais, je trouve tjs ca bof bof
Je dirais meme que c'est l'enfer. On a tous l'habitude d'écrire du code en anglais, donc au lieu de chercher .Text, on doit chercher .Titre...

Pitié......

Commentaire de geniusishere le 01/03/2005 19:35:22

je suis d'accord, je vais homogénéiser tout ça !!

Commentaire de georgeduke le 29/05/2005 09:53:32

Sniiiiiif ! Si quelqu'un a réussi à compiler cette source avec SharpDevelop... moi je n'y arrive pas, j'ai une compilation avec 0 erreur et 0 avertissement mais juste après j'ai une erreur du Common Language Runtime Debugging Services qui m'invite à terminer l'appli :-(
Dommage cette source avait l'air plus qu'interessante...

Commentaire de BinItsMeKoi le 05/05/2008 11:52:27

Bonjour à tous,
C'est quand même bizarre qu'on doit se faire faire un treeview à colonne. C'est mal pensé tout ça.
Je voudrais signaler que sous vista ce treeview ne marche pas !! Apparemment ça serait le framework qui plante.
une idée ?

Commentaire de geniusishere le 05/05/2008 21:46:56

Bonsoir,

Effectivement cette version date un peu, mais il est plus à jour ici : http://www.codeplex.com/geniustreeview/

Commentaire de yanildo le 06/05/2008 11:56:43 5/10

Bonjour,
je n'arrive pas à afficher un treeview. peut tu me donner une petite aide. merci!

Commentaire de geniusishere le 06/05/2008 21:51:14

la question est vague....

1) arrives-tu à executer la demo de la version 2.0 (http://www.codeplex.com/geniustreeview/)

Commentaire de yanildo le 12/05/2008 16:00:12

voila, déjà lors de la compilation du projet j'ai cela comme erreur :

Error 3 The command "copy Genius.Controls.dll C:\Documents and Settings\yanildo\Desktop\genius\DemoTreeView\lib\Debug" exited with code 1. Genius.Controls


De plus j'ai un warning
Warning 1 'System.AppDomain.GetCurrentThreadId()' is obsolete: 'AppDomain.GetCurrentThreadId has been deprecated because it does not provide a stable Id when managed threads are running on fibers (aka lightweight threads). To get a stable identifier for a managed thread, use the ManagedThreadId property on Thread.  http://go.microsoft.com/fwlink/?linkid=14202' C:\Documents and Settings\ygraven\Desktop\genius\Genius.Controls\TreeView\Editors\GeniusTreeViewEditor.cs 227 95 Genius.Controls

merci

Commentaire de yanildo le 12/05/2008 16:34:55

J'ai réglé l'erreur mais le gros problème c'est que je ne peux pas afficher les composants en mode design car il n'arrive pas a convertir les objets 'Genius.Controls.GeniusLinearGradientBrush' en type 'System.Drawing.Color'.


 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Listview et dotnet (application smartdevices csharp) [ par medisi ] Y'a t il une solution pour que listview accepte des couleur (BackgroundColor,ForeColor)dans une application smartdevices (pocket pc).Merci pour votre Csharp treeView [ par sympatie0 ] Salut à tous,   je suis debutante Csharp et je voudrai savoir comment faire pour utiliser le controle treeView pr afficher les disques locaux et mes d treeView+nom de la session [ par sympatie0 ] Salut à tous,      Dans le but de construire un treeView afin de donner la possibilité à l'utilisateur de localiser l'emplacement de son dossier sacha recupere last_insert_id avec mysql en csharp [ par olibara ] BonjourQuelqu'un  sait-il comment depuis cSharp je peux utiliser la commandeselect Last_insert_id() de mysqlPour recuperer cet ID Drag & Drop de ListView a TreeView [ par gbourgeois0019 ] Bonjour à tous,   J'ai un petit problème que je n'arrive pas à résoudre. J'ai fait des recherches un peu partout mais je n'arrive pas à trouver ce que [WPF] Récupérer le Parent d'un SelectedItem d'un Treeview bindé? [ par Chris_LaFouine ] Bonjour,Je suis en train de migrer une de mes applis perso en .NET 3.5 avec interface en XAML et je suis bloqué!Ce que je cherche à faire :Récupérer l treeview [ par verbeyst ] J'aimerais implémenter  un treeview  qui remplirait les mêmes fonctionnalités l'explorateur windows version simplifiée. En d'autres termes je voudrais Création de node dans un Treeview?? [ par motardazerty ] Bon bah je crois que tout est dit dans le titre, je le répète quand même:Donc je voudrais créer des Nodes dans un treeView (enfant/parent).Es ce que q redimentionner les images du TreeView [ par __salwa ] Bonjour tout le monde, J'ai un treeview qui affiche de images en utilisant un objet ImageList. je voudrai savoir s'il ya un moyen de redimentionner Framework dotnet [ par GBadry ] Salut encore une fois les amis,lorsque je déploie un projet et que je l'installe sur une autre machine, normalement toutes les dépendances du projet y


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,905 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales