Question : Édition intégrée de grille

J'emploie le radgrid de telerik et j'ai ce code au-dessous de celui quand je frappe édite pour le mode d'édition qu'il ne montre pas la rangée entière dans de gauche à droite à la place il montre toutes les colonnes verticalement. Comment est-ce que je peux fixer cela ? J'ai besoin de toutes mes boîtes à textes editable… de GridBoundColumns class= > " clair " de
> de " codeSnippet " de class= de
class= " lineNumbers " de
class= de
1 :
2 :
3 :
4 :
5 :
6 :
7 :
8 :
9 :
10 :
11 :
12 :
13 :
14 :
15 :
16 :
17 :
18 :
19 :
20 :
21 :
22 :
23 :
24 :
25 :
26 :
27 :
28 :
29 :
30 :
31 :
32 :
33 :
34 :
35 :
36 :
37 :
38 :
39 :
40 :
41 :
42 :
43 :
44 :
45 :
46 :
47 :
48 :
49 :
50 :
51 :
52 :
53 :
54 :
55 :
56 :
57 :
58 :
> " faux " " blanc " " faux " " droit "
mystring " SelectCommand= " myspcustomer " SelectCommandType= " StoredProcedure " >
class= de

Réponse : Édition intégrée de grille

------------------------------------Code de C#---------------------------------
using le système ;
using System.Collections ;
using System.Data ;
using System.Web.UI ;
using System.Web.UI.WebControls ;
using Telerik.QuickStart ;
using Telerik.QuickStart.Grid ;
using Telerik.WebControls ;

namespace Telerik.GridExamplesCSharp.AJAX.EditOnDblClick
{
    classe abstraite publique DefaultCS : XhtmlPage
    {
        Code produit par concepteur de forme de Web de #region
        OnInit vide protégé par dépassement (EventArgs e)
        {
            //
            // CODEGEN : Cet appel est exigé par le concepteur de forme de Web d'ASP.NET.
            //
            InitializeComponent () ;
            base.OnInit (e) ;
        }
       
        /// a exigé la méthode pour l'appui de concepteur - ne pas modifier
        /// le contenu de cette méthode avec le rédacteur de code.
        ///
        InitializeComponent vide privé ()
        {
            this.RadGrid1.NeedDataSource += nouveau Telerik.WebControls.GridNeedDataSourceEventHandler (this.RadGrid1_NeedDataSource) ;
            this.RadGrid1.ColumnCreated += nouveau Telerik.WebControls.GridColumnCreatedEventHandler (this.RadGrid1_ColumnCreated) ;
            ceci. Charge += nouvel EventHandler (ceci. Page_Load) ;
        }
        #endregion

        System.Web.UI.WebControls.Label protégé Label1 ;
        Telerik.WebControls.RadGrid protégé RadGrid1 ;

        Page_Load vide protégé (expéditeur d'objet, System.EventArgs e)
        {
            clientExecute de corde = corde. Composer (« document.getElementById (« {0} ").innerHTML = '' ; « , ceci. Label1.ClientID) ;
            this.RadGrid1.ClientSettings.ClientEvents.OnGridCreated = clientExecute ;
        }

        vide privé RadGrid1_NeedDataSource (source d'objet, Telerik.WebControls.GridNeedDataSourceEventArgs e)
        {
            RadGrid1.DataSource = OrderDetails ;
        }

        DataTable privé OrderDetails
        {
            obtenir
            {
                si (ceci. Session [« OrderDetails »] ! = nulle)
                {
                    renvoyer (DataTable) ceci. Session [« OrderDetails »] ;
                }

                DataTable recherche = DataSourceHelperCS.GetDataTable (« CHOISIR * À PARTIR [des détails d'ordre] ") ;
                ceci. Session [« OrderDetails »] = recherche ;
                recherche de retour ;
            }            
        }

        vide protégé RaisePostBackEvent (sourceControl d'IPostBackEventHandler, eventArgument de priorité de corde)
        {
            base.RaisePostBackEvent (sourceControl, eventArgument) ;
            si (le sourceControl est RadGrid)
            {
                ficeler [] le postBackEventArgumentData = l'eventArgument.Split (« : ") ;
                commutateur (postBackEventArgumentData [0])
                {
                    le cas « éditent » :
                    {
                        ((RadGrid1.MasterTableView.Controls [0] comme Tableau). Rangées [international. Analyser (postBackEventArgumentData [1])] comme GridItem). Éditer = rectifier ;
                        RadGrid1.Rebind () ;
                        coupure ;
                    }
                    cas « mise à jour » :
                    {
                        Article de GridItem = ((RadGrid1.MasterTableView.Controls [0] comme Tableau). Rangées [international. Analyser (postBackEventArgumentData [1])] comme GridItem) ;
                        UpdateItem (article) ;
                        article. Éditer = faux ;
                        RadGrid1.Rebind () ;
                        coupure ;
                    }                
                }
            }
        }

        vide privé RadGrid1_ColumnCreated (expéditeur d'objet, Telerik.WebControls.GridColumnCreatedEventArgs e)
        {
            si (e.Column est GridBoundColumn)
            {
                si ((e.Column comme GridBoundColumn) == « OrderID » de .DataField || (e.Column comme GridBoundColumn) == « identité de produit » de .DataField)
                {
                    (e.Column comme GridBoundColumn) .ReadOnly = rectifient ;
                    e.Column.HeaderStyle.Width = Unit.Pixel (60) ;
                }
                autrement
                {
                    e.Column.HeaderStyle.Width = Unit.Pixel (150) ;
                }
            }
        }

        UpdateItem vide privé (article de GridItem)
        {
            editedItem = article de GridEditableItem comme GridEditableItem ;
            DataTable ordersTable = this.OrderDetails ;

            //Locate la rangée changée dans le point d'émission
            changedRows de DataRow [] = ordersTable.Select (« OrderID = » + editedItem [« OrderID »]. Texte + » ET « + » identité de produit = « + editedItem [« identité de produit »]. Texte) ;
           
            labelID de corde = ceci. Label1.ClientID ;
            clientExecute de corde = corde. Composer (« document.getElementById (« {0} ").innerHTML = « {1} » ; « , labelID, "") ;

            si (changedRows.Length ! = 1)
            {
                clientExecute = corde. Composer (« document.getElementById (« {0} ").innerHTML = « {1} » ; « ,
                    labelID, « Unbale pour localiser la commande pour updating.") ;

                this.RadGrid1.ClientSettings.ClientEvents.OnGridCreated = clientExecute ;
                retour ;
            }

            nouvelles valeurs de //Update
            newValues de table de brouillage = nouvelle table de brouillage () ;
            //The GridTableView remplira valeurs à partir de toutes les colonnes editable dans le gâchis
            item.OwnerTableView.ExtractValuesFromItem (newValues, editedItem) ;

            changedRow de DataRow = changedRows [0] ;
            changedRow.BeginEdit () ;
            essai
            {                    
                foreach (entrée d'entrée dictionnaire dans les newValues)
                {
                    changedRow [entrée (de corde). Clef] = entrée. Valeur ;
                }
                changedRow.EndEdit () ;
            }
            crochet (exception ex)
            {
                changedRow.CancelEdit () ;
                Le mode de //In AJAX ceci mettra à jour le texte correspondant d'étiquette, client-côté :
                clientExecute = corde. Format (« document.getElementById (« {0} ").innerHTML = « {1} » ; « ,
                    labelID, Server.HtmlEncode (« incapable de mettre à jour des ordres. Raison :  » + ex. Message). Remplacer (« «  », «  » ").Replace ( » \ r \ n ", « 
")) ;

                this.RadGrid1.ClientSettings.ClientEvents.OnGridCreated = clientExecute ;
                retour ;
            }

            //Code pour mettre à jour la base de données peut aller ici…
            clientExecute = corde. Composer (« document.getElementById (« {0} ").innerHTML = « {1} » ; « ,
                le labelID, « ordre » + changedRow [« OrderID »] + », identité de produit « + changedRow [« identité de produit »] + » a mis à jour ") ;

            this.RadGrid1.ClientSettings.ClientEvents.OnGridCreated = clientExecute ;
        }

    }

}
------------------------------Code d'ASPX------------------------------
<>.cs " Inherits= " Telerik.GridExamplesCSharp.AJAX.EditOnDblClick.DefaultCS " %>
<>art " Assembly= " Telerik.QuickStart " %>
<> %>
<>« %>
<> %>
<>rols " Assembly= " RadGrid " %>
http://www.w3.org/tr/xhtml11/DTD/xhtml11.dtd">

   
        tag>
       
       
       
   
   
       
            lerik : header>
           
                                    pagesize= " 20 " GridLines= " aucun " runat= " vrai " " serveur " d'allowpaging= >
                   
                   
                   
                        clientevents>
                   

               

           

           
           
            r>
       
   


Vous pouvez vouloir permettre à l'utilisateur de forcer l'article de grille éditez dedans le mode par double-clicking simplement l'article respectif (une approche facile et intuitive). Cette démo illustre comment commuter une rangée éditent dedans le mode par double-clicking un article de grille arbitraire et comment mettre à jour cette rangée quand l'utilisateur clique une autre rangée dans la grille. En outre, un facile à utiliser confirme le dialogue sera montré pour inciter, que l'opération devrait être propagée ou pas.
Les appels des utilisations RadGridClientObject.AjaxRequest d'exemple () (câblant les événements de RowClick et de RowDblClick) et l'événement d'onchange des entrées dans les rangées de grille utilisées pour éditer (le traiteur pour l'événement d'onchange est affecté dans le traiteur de RowCreated de la grille).

L'édition additionnelle vous incline et dupe (par exemple comment exécuter des mises à jour en lots) peut trouver dans Comment-au sous-chapitre section d'insertion/mise à jour/suppression de disques dans l'aide en ligne du produit :
Comment-à
using le système ;
using System.Collections ;
using System.Data ;
using System.Web.UI ;
using System.Web.UI.WebControls ;
using Telerik.QuickStart ;
using Telerik.QuickStart.Grid ;
using Telerik.WebControls ;

namespace Telerik.GridExamplesCSharp.AJAX.EditOnDblClick
{
    classe abstraite publique DefaultCS : XhtmlPage
    {
        Code produit par concepteur de forme de Web de #region
        OnInit vide protégé par dépassement (EventArgs e)
        {
            //
            // CODEGEN : Cet appel est exigé par le concepteur de forme de Web d'ASP.NET.
            //
            InitializeComponent () ;
            base.OnInit (e) ;
        }
       
        /// a exigé la méthode pour l'appui de concepteur - ne pas modifier
        /// le contenu de cette méthode avec le rédacteur de code.
        ///
        InitializeComponent vide privé ()
        {
            this.RadGrid1.NeedDataSource += nouveau Telerik.WebControls.GridNeedDataSourceEventHandler (this.RadGrid1_NeedDataSource) ;
            this.RadGrid1.ColumnCreated += nouveau Telerik.WebControls.GridColumnCreatedEventHandler (this.RadGrid1_ColumnCreated) ;
            ceci. Charge += nouvel EventHandler (ceci. Page_Load) ;
        }
        #endregion

        System.Web.UI.WebControls.Label protégé Label1 ;
        Telerik.WebControls.RadGrid protégé RadGrid1 ;

        Page_Load vide protégé (expéditeur d'objet, System.EventArgs e)
        {
            clientExecute de corde = corde. Composer (« document.getElementById (« {0} ").innerHTML = '' ; « , ceci. Label1.ClientID) ;
            this.RadGrid1.ClientSettings.ClientEvents.OnGridCreated = clientExecute ;
        }

        vide privé RadGrid1_NeedDataSource (source d'objet, Telerik.WebControls.GridNeedDataSourceEventArgs e)
        {
            RadGrid1.DataSource = OrderDetails ;
        }

        DataTable privé OrderDetails
        {
            obtenir
            {
                si (ceci. Session [« OrderDetails »] ! = nulle)
                {
                    renvoyer (DataTable) ceci. Session [« OrderDetails »] ;
                }

                DataTable recherche = DataSourceHelperCS.GetDataTable (« CHOISIR * À PARTIR [des détails d'ordre] ") ;
                ceci. Session [« OrderDetails »] = recherche ;
                recherche de retour ;
            }            
        }

        vide protégé RaisePostBackEvent (sourceControl d'IPostBackEventHandler, eventArgument de priorité de corde)
        {
            base.RaisePostBackEvent (sourceControl, eventArgument) ;
            si (le sourceControl est RadGrid)
            {
                ficeler [] le postBackEventArgumentData = l'eventArgument.Split (« : ") ;
                commutateur (postBackEventArgumentData [0])
                {
                    le cas « éditent » :
                    {
                        ((RadGrid1.MasterTableView.Controls [0] comme Tableau). Rangées [international. Analyser (postBackEventArgumentData [1])] comme GridItem). Éditer = rectifier ;
                        RadGrid1.Rebind () ;
                        coupure ;
                    }
                    cas « mise à jour » :
                    {
                        Article de GridItem = ((RadGrid1.MasterTableView.Controls [0] comme Tableau). Rangées [international. Analyser (postBackEventArgumentData [1])] comme GridItem) ;
                        UpdateItem (article) ;
                        article. Éditer = faux ;
                        RadGrid1.Rebind () ;
                        coupure ;
                    }                
                }
            }
        }

        vide privé RadGrid1_ColumnCreated (expéditeur d'objet, Telerik.WebControls.GridColumnCreatedEventArgs e)
        {
            si (e.Column est GridBoundColumn)
            {
                si ((e.Column comme GridBoundColumn) == « OrderID » de .DataField || (e.Column comme GridBoundColumn) == « identité de produit » de .DataField)
                {
                    (e.Column comme GridBoundColumn) .ReadOnly = rectifient ;
                    e.Column.HeaderStyle.Width = Unit.Pixel (60) ;
                }
                autrement
                {
                    e.Column.HeaderStyle.Width = Unit.Pixel (150) ;
                }
            }
        }

        UpdateItem vide privé (article de GridItem)
        {
            editedItem = article de GridEditableItem comme GridEditableItem ;
            DataTable ordersTable = this.OrderDetails ;

            //Locate la rangée changée dans le point d'émission
            changedRows de DataRow [] = ordersTable.Select (« OrderID = » + editedItem [« OrderID »]. Texte + » ET « + » identité de produit = « + editedItem [« identité de produit »]. Texte) ;
           
            labelID de corde = ceci. Label1.ClientID ;
            clientExecute de corde = corde. Composer (« document.getElementById (« {0} ").innerHTML = « {1} » ; « , labelID, "") ;

            si (changedRows.Length ! = 1)
            {
                clientExecute = corde. Composer (« document.getElementById (« {0} ").innerHTML = « {1} » ; « ,
                    labelID, « Unbale pour localiser la commande pour updating.") ;

                this.RadGrid1.ClientSettings.ClientEvents.OnGridCreated = clientExecute ;
                retour ;
            }

            nouvelles valeurs de //Update
            newValues de table de brouillage = nouvelle table de brouillage () ;
            //The GridTableView remplira valeurs à partir de toutes les colonnes editable dans le gâchis
            item.OwnerTableView.ExtractValuesFromItem (newValues, editedItem) ;

            changedRow de DataRow = changedRows [0] ;
            changedRow.BeginEdit () ;
            essai
            {                    
                foreach (entrée d'entrée dictionnaire dans les newValues)
                {
                    changedRow [entrée (de corde). Clef] = entrée. Valeur ;
                }
                changedRow.EndEdit () ;
            }
            crochet (exception ex)
            {
                changedRow.CancelEdit () ;
                Le mode de //In AJAX ceci mettra à jour le texte correspondant d'étiquette, client-côté :
                clientExecute = corde. Format (« document.getElementById (« {0} ").innerHTML = « {1} » ; « ,
                    labelID, Server.HtmlEncode (« incapable de mettre à jour des ordres. Raison :  » + ex. Message). Remplacer (« «  », «  » ").Replace ( » \ r \ n ", « 
")) ;

                this.RadGrid1.ClientSettings.ClientEvents.OnGridCreated = clientExecute ;
                retour ;
            }

            //Code pour mettre à jour la base de données peut aller ici…
            clientExecute = corde. Composer (« document.getElementById (« {0} ").innerHTML = « {1} » ; « ,
                le labelID, « ordre » + changedRow [« OrderID »] + », identité de produit « + changedRow [« identité de produit »] + » a mis à jour ") ;

            this.RadGrid1.ClientSettings.ClientEvents.OnGridCreated = clientExecute ;
        }

    }

}

<>.cs " Inherits= " Telerik.GridExamplesCSharp.AJAX.EditOnDblClick.DefaultCS " %>
<>art " Assembly= " Telerik.QuickStart " %>
<> %>
<>« %>
<> %>
<>rols " Assembly= " RadGrid " %>
http://www.w3.org/tr/xhtml11/DTD/xhtml11.dtd">

   
        tag>
       
       
       
   
   
       

            lerik : header>
           
                                    pagesize= " 20 " GridLines= " aucun " runat= " vrai " " serveur " d'allowpaging= >
                   
                   
                   
                        clientevents>
                   

               

           

           
           
            r>
       
   


Espérer cette aide
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us