FIX: Possibile che venga visualizzato una finestra di messaggio "IndexOutOfRangeException" quando si utilizza la combinazione di tasti MAIUSC+freccia su in un controllo DataGrid in Visual Studio .NET 2002

Traduzione articoli Traduzione articoli
Identificativo articolo: 825031 - Visualizza i prodotti a cui si riferisce l?articolo.
Questo articolo è stato archiviato. L?articolo, quindi, viene offerto ?così come è? e non verrà più aggiornato.
Espandi tutto | Chiudi tutto

In questa pagina

Sintomi

Quando si utilizza la combinazione di tasti MAIUSC+freccia su in un controllo DataGrid , potrebbe verificarsi un problema. Quando si verifica questo problema, essere la proprietà ReadOnly del controllo DataGrid è impostato su true. È inoltre disporre di tutte le righe nel controllo DataGrid selezionato.

È possibile che venga visualizzato un messaggio di errore analogo al seguente:
System.IndexOutOfRangeException: Indice non rientra nei limiti della matrice.
in System.Windows.Forms.DataGrid.ProcessGridKey (KeyEventArgs creazione)
in System.Windows.Forms.DataGrid.ProcessDialogKey (keyData tasti)
in System.Windows.Forms.Control.PreProcessMessage (messaggio & msg)
in System.Windows.Forms.ThreadContext.System.Windows.Forms.
UnsafeNativeMethods+IMsoComponent.FPreTranslateMessage (MSG & msg)

Risoluzione

Per risolvere il problema, ottenere il service pack più recente per Microsoft .NET Framework 1.0.Il seguente file è disponibile per il download dall'Area download Microsoft:

Microsoft .NET Framework 1.0 Service Pack 3

Status

Microsoft ha confermato che questo problema riguarda i prodotti sono elencati nella sezione "Si applica a". Corretto prima in Microsoft .NET Framework 1.0 Service Pack 3.

Informazioni

Procedura per riprodurre il problema

  1. Avviare Microsoft Visual Studio .NET.
  2. Scegliere Nuovo dal menu file , quindi progetto .

    Verrà visualizzata la finestra di dialogo Nuovo progetto .
  3. In Tipi progetto fare clic su Progetti di Visual Basic .
  4. In modelli , fare clic su Windows Application .
  5. Nella casella nome digitare WindowsApplication1 come nome dell'applicazione.
  6. Fare clic su OK .

    Per impostazione predefinita, un file denominato Form1.vb viene aggiunto al progetto se si utilizza Visual Basic. NET.

    Per impostazione predefinita, un file denominato Form1.cs viene aggiunto al progetto se si utilizza Microsoft Visual C#. NET.
  7. Fare doppio clic su DataGrid per aggiungere un controllo DataGrid al form denominato Form1 .

    Per impostazione predefinita, il controllo DataGrid denominato DataGrid viene aggiunto al form denominato Form1.
  8. Nella visualizzazione Progettazione di Form1 fare doppio clic sul modulo denominato Form1 e aggiungere il codice riportato di seguito alla routine Form1_Load :

    codice Visual Basic .NET
    Dim dataTable As DataTable
    dataTable = New DataTable("TABLE")
    
    Dim col As New DataColumn()
    col.DataType = Type.GetType("System.String")
    col.ColumnName = "col1"
    col.DefaultValue = "000"
    'Add columns.  
    dataTable.Columns.Add(New DataColumn("Col1"))
    dataTable.Columns.Add(New DataColumn("Col2"))
    dataTable.Columns.Add(New DataColumn("Col3"))
    
    Dim myDataRow As DataRow = dataTable.NewRow()
    myDataRow(0) = "11111"
    myDataRow(1) = "22222"
    myDataRow(2) = "33333"
    dataTable.Rows.Add(myDataRow)
    
    DataGrid1.DataSource = dataTable.DefaultView
    di nuovo DataColumn("Col2")) (dataTable.Columns.Add
    codice di Visual C# .NET dataTable
    DataTable dataTable;
    dataTable = new DataTable("TABLE");
    
    DataColumn col = new DataColumn();
    col.DataType = Type.GetType("System.String");
    col.ColumnName = "col1";
    col.DefaultValue = "000";
    //Add columns.  
    dataTable.Columns.Add(new DataColumn("Col1"));
    dataTable.Columns.Add(new DataColumn("Col2"));
    dataTable.Columns.Add(new DataColumn("Col3"));
    
    DataRow myDataRow = dataTable.NewRow();
    myDataRow[0] = "11111";
    myDataRow[1] = "22222";
    myDataRow[2] = "33333";
    dataTable.Rows.Add(myDataRow);
    
    dataGrid1.DataSource = dataTable.DefaultView;
  9. Scegliere dal menu Genera , Genera soluzione .
  10. Nel menu debug , fare clic su Start .

    Verrà visualizzato il modulo denominato Form1 .
  11. Inserire il puntatore del mouse in qualsiasi colonna dell'ultima riga nel controllo DataGrid .
  12. Selezionare tutte le celle nel controllo DataGrid utilizzando la combinazione di tasti CTRL+A.
  13. Premere la combinazione di tasti MAIUSC+freccia su.

    Si potrebbe visualizzato il messaggio di errore citato nella sezione "Sintomi" sezione.

Riferimenti

Per ulteriori informazioni, visitare il seguente sito Web Microsoft Developer Network (MSDN):

DataGrid di Windows Form
http://msdn2.microsoft.com/en-us/vbasic/ms789159.aspx
Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
320584I controlli come intercettare sequenze di tasti in .NET utilizzando Visual C# .NET

Proprietà

Identificativo articolo: 825031 - Ultima modifica: domenica 9 febbraio 2014 - Revisione: 1.6
Le informazioni in questo articolo si applicano a:
  • Microsoft .NET Framework 1.0 Service Pack 2
  • Microsoft .NET Framework 1.0 Service Pack 1
  • Microsoft .NET Framework 1.0
Chiavi: 
kbnosurvey kbarchive kbmt kbnetframe100presp3fix kbctrl kbcontrol kbqfe kbhotfixserver kbfix kbbug KB825031 KbMtit
Traduzione automatica articoli
Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 825031
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com