Aggiunta di controlli Cell nei fogli di lavoro
introduzione
Attualmente, Aspose.Cells.GridDesktop supporta l’aggiunta di tre tipi di controlli cella, che includono quanto segue:
- Pulsante
- Casella di controllo
- Casella combinata
Tutti questi controlli derivano da una classe astratta,CellControlOgni foglio di lavoro contiene una raccolta diControlli. È possibile aggiungere nuovi controlli cella e accedere a quelli esistenti utilizzando questoControlliraccolta facilmente.
**IMPORTANTE:**Se desideri aggiungere controlli di cella a tutte le celle di una colonna invece di aggiungerne uno per uno, puoi fare riferimento aGestione dei controlli Cell nelle colonne.
Aggiunta di pulsante
Per aggiungere un pulsante nel foglio di lavoro utilizzando Aspose.Cells.GridDesktop, procedi nel seguente modo:
- Aggiungi il controllo Aspose.Cells.GridDesktop al tuoModulo
- Accedi a qualsiasi desideratoFoglio di lavoro
- AggiungerePulsantealControlliraccolta delFoglio di lavoro
Durante l’aggiuntaPulsante, possiamo specificare la posizione della cella (dove visualizzarla), la larghezza e l’altezza e la didascalia del pulsante.
Gestione degli eventi del pulsante
Abbiamo discusso sull’aggiuntaPulsantecontrollo alFoglio di lavoroma qual è il vantaggio di avere solo un pulsante nel foglio di lavoro se non possiamo usarlo. Quindi, ecco che nasce la necessità della gestione degli eventi del pulsante.
Per gestire ilClicevento delPulsantecontrollo, Aspose.Cells.GridDesktop fornisceCellButtonClicevento che dovrebbe essere implementato dagli sviluppatori in base alle loro esigenze. Ad esempio, abbiamo appena visualizzato un messaggio quando si fa clic sul pulsante, come mostrato di seguito:
Specifica di un’immagine di sfondo per il controllo pulsante
Possiamo impostare l’immagine/immagine di sfondo per il controllo del pulsante con la sua etichetta/testo come mostrato nel codice seguente:
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = Utils.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Set the image. | |
Image image = Image.FromFile(dataDir + @"AsposeLogo.jpg"); | |
button.Image = image; |
IMPORTANTE:Tutti gli eventi dei controlli cella contengono aCellControlEventArgsargomento che fornisce i numeri di riga e colonna della cella che contiene il controllo cella (il cui evento viene attivato).
Aggiunta di CheckBox
Per aggiungere una casella di controllo nel foglio di lavoro utilizzando Aspose.Cells.GridDesktop, procedi nel seguente modo:
- Aggiungi il controllo Aspose.Cells.GridDesktop al tuoModulo
- Accedi a qualsiasi desideratoFoglio di lavoro
- AggiungereCasella di controlloalControlliraccolta delFoglio di lavoro
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Accessing the worksheet of the Grid that is currently active | |
Worksheet sheet = gridDesktop1.GetActiveWorksheet(); | |
// Accessing the location of the cell that is currently in focus | |
CellLocation cl = sheet.GetFocusedCellLocation(); | |
// Adding checkbox to the Controls collection of the Worksheet | |
sheet.Controls.AddCheckBox(cl.Row, cl.Column, true); |
Durante l’aggiuntaCasella di controllo, possiamo specificare la posizione della cella (dove visualizzarla) e lo stato della casella di controllo.
Gestione degli eventi di CheckBox
Aspose.Cells.GridDesktop fornisceCellCheckedChangedevento che viene attivato quando ilControllatolo stato della casella di controllo è cambiato. Gli sviluppatori possono gestire questo evento in base alle proprie esigenze. Ad esempio, abbiamo appena visualizzato un messaggio per mostrare il fileControllatostato della casella di controllo nel codice seguente:
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Implenting CellCheckedChanged event handler | |
private void gridDesktop1_CellCheckedChanged(object sender, CellControlEventArgs e) | |
{ | |
// Getting the reference of the CheckBox control whose event is triggered | |
Aspose.Cells.GridDesktop.CheckBox check = (Aspose.Cells.GridDesktop.CheckBox)gridDesktop1.GetActiveWorksheet().Controls[e.Row, e.Column]; | |
// Displaying the message when the Checked state of CheckBox is changed | |
MessageBox.Show("Current state of CheckBox is " + check.Checked); | |
} |
Aggiunta di ComboBox
Per aggiungere una casella combinata nel foglio di lavoro utilizzando Aspose.Cells.GridDesktop , procedi nel seguente modo:
- Aggiungi il controllo Aspose.Cells.GridDesktop al tuoModulo
- Accedi a qualsiasi desideratoFoglio di lavoro
- Crea un array di elementi (o valori) a cui verranno aggiuntiCasella combinata
- AggiungereCasella combinataalControlliraccolta delFoglio di lavorospecificando la posizione della cella (dove verrà visualizzata la casella combinata) e gli elementi/valori che verranno visualizzati quando si fa clic sulla casella combinata
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Accessing the worksheet of the Grid that is currently active | |
Worksheet sheet = gridDesktop1.GetActiveWorksheet(); | |
// Accessing the location of the cell that is currently in focus | |
CellLocation cl = sheet.GetFocusedCellLocation(); | |
// Creating an array of items or values that will be added to combobox | |
string[] items = new string[3]; | |
items[0] = "Aspose"; | |
items[1] = "Aspose.Grid"; | |
items[2] = "Aspose.Grid.Desktop"; | |
// Adding combobox to the Controls collection of the Worksheet | |
sheet.Controls.AddComboBox(cl.Row, cl.Column, items); |
Gestione degli eventi di ComboBox
Aspose.Cells.GridDesktop fornisceCellSelectedIndexChangedevento che viene attivato quando ilIndice selezionatodella casella combinata è cambiato. Gli sviluppatori possono gestire questo evento secondo i loro desideri. Ad esempio, abbiamo appena visualizzato un messaggio per mostrare il fileArticolo selezionatodella casella combinata:
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Implenting CellSelectedIndexChanged event handler | |
private void gridDesktop1_CellSelectedIndexChanged(object sender, CellComboBoxEventArgs e) | |
{ | |
// Getting the reference of the ComboBox control whose event is triggered | |
Aspose.Cells.GridDesktop.ComboBox combo = | |
(Aspose.Cells.GridDesktop.ComboBox)gridDesktop1.GetActiveWorksheet().Controls[e.Row, e.Column]; | |
// Displaying the message when the Selected Index of ComboBox is changed | |
MessageBox.Show(combo.Items[combo.SelectedIndex].ToString()); | |
} |