DataGridView denetimiyle varsayılan klavye ve fare davranışı
Aşağıdaki tablolarda kullanıcıların klavye ve fare aracılığıyla denetimle DataGridView nasıl etkileşim kurabileceği açıklanmaktadır.
Dekont
Klavye davranışını özelleştirmek için gibi KeyDownstandart klavye olaylarını işleyebilirsiniz. Ancak düzenleme modunda barındırılan düzenleme denetimi klavye girişini alır ve denetim için DataGridView klavye olayları gerçekleşmez. Düzenleme denetimi olaylarını işlemek için, işleyicilerinizi bir EditingControlShowing olay işleyicisindeki düzenleme denetimine ekleyin. Alternatif olarak, ve ProcessDataGridViewKey yöntemlerini geçersiz kılarak ProcessDialogKey bir DataGridView alt sınıftaki klavye davranışını özelleştirebilirsiniz.
Varsayılan klavye işleme
Temel gezinti ve giriş tuşları
Tuş veya tuş bileşimi | Tanım |
---|---|
Aşağı ok | Odağı geçerli hücrenin hemen altındaki hücreye taşır. Odak son satırdaysa hiçbir şey yapmaz. |
Sol ok | Odağı satırdaki bir önceki hücreye taşır. Odak satırdaki ilk hücredeyse hiçbir şey yapmaz. |
Sağ ok | Odağı satırdaki bir sonraki hücreye taşır. Odak satırdaki son hücredeyse hiçbir şey yapmaz. |
Yukarı ok | Odağı geçerli hücrenin hemen üstündeki hücreye taşır. Odak ilk satırdaysa hiçbir şey yapmaz. |
Giriş Sayfası | Odağı geçerli satırdaki ilk hücreye taşır. |
Son | Odağı geçerli satırdaki son hücreye taşır. |
Sayfa aşağı | Denetimi tam olarak görüntülenen satır sayısına göre aşağı doğru kaydırır. Sütunları değiştirmeden odağı tam olarak görüntülenen son satıra taşır. |
Sayfa yukarı | Denetimi, tam olarak görüntülenen satır sayısına göre yukarı doğru kaydırır. Sütunları değiştirmeden odağı ilk görüntülenen satıra taşır. |
Sekme | StandardTab Özellik değeri isefalse , odağı geçerli satırdaki bir sonraki hücreye taşır. Odak zaten satırın son hücresindeyse, odağı sonraki satırdaki ilk hücreye taşır. Odak denetimdeki son hücredeyse, odağı üst kapsayıcının sekme sırasına göre bir sonraki denetime taşır.StandardTab Özellik değeri ise true , odağı üst kapsayıcının sekme sırasına göre bir sonraki denetime taşır. |
Shift + Sekmesi | StandardTab Özellik değeri isefalse , odağı geçerli satırdaki önceki hücreye taşır. Odak zaten satırın ilk hücresindeyse, odağı önceki satırdaki son hücreye taşır. Odak denetimdeki ilk hücredeyse, odağı üst kapsayıcının sekme sırasına göre önceki denetime taşır.StandardTab Özellik değeri ise true , odağı üst kapsayıcının sekme sırasına göre önceki denetime taşır. |
Ctrl + Sekmesi | StandardTab Özellik değeri isefalse , odağı üst kapsayıcının sekme sırasına göre bir sonraki denetime taşır.StandardTab Özellik değeri ise true , odağı geçerli satırdaki bir sonraki hücreye taşır. Odak zaten satırın son hücresindeyse, odağı sonraki satırdaki ilk hücreye taşır. Odak denetimdeki son hücredeyse, odağı üst kapsayıcının sekme sırasına göre bir sonraki denetime taşır. |
Ctrl + Shift Sekmesi + | StandardTab Özellik değeri isefalse , odağı üst kapsayıcının sekme sırasına göre önceki denetime taşır.StandardTab Özellik değeri ise true , odağı geçerli satırdaki önceki hücreye taşır. Odak zaten satırın ilk hücresindeyse, odağı önceki satırdaki son hücreye taşır. Odak denetimdeki ilk hücredeyse, odağı üst kapsayıcının sekme sırasına göre önceki denetime taşır. |
Ctrl + oku | Odağı ok yönündeki en uzak hücreye taşır. |
Ctrl + Giriş | Odağı denetimdeki ilk hücreye taşır. |
Ctrl + Ucu | Odağı denetimdeki son hücreye taşır. |
Ctrl + Sayfa aşağı/yukarı | Page down veya Page up ile aynı. |
F2 | Özellik değeri EditOnF2 veya EditOnKeystrokeOrF2ise geçerli hücreyi EditMode hücre düzenleme moduna geçirir. |
F3 | Özellik değeri ise DataGridViewColumn.SortMode geçerli sütunu sıralar Automatic. Geçerli sütun üst bilgisine tıklamayla aynıdır. .NET Framework 4.7.2'den itibaren kullanılabilir. Bu özelliği etkinleştirmek için uygulamaların .NET Framework 4.7.2 veya sonraki sürümleri hedeflemesi veya AppContext anahtarlarını kullanarak erişilebilirlik iyileştirmelerini açıkça kabul etmesi gerekir. |
F4 | Geçerli hücre bir DataGridViewComboBoxCellise, hücreyi düzenleme moduna alır ve açılan listeyi görüntüler. |
Alt + Yukarı/Aşağı ok | Geçerli hücre bir DataGridViewComboBoxCellise, hücreyi düzenleme moduna alır ve açılan listeyi görüntüler. |
Alt + Sol/Sağ ok | Geçerli hücre sütununun genişliğini artırır veya azaltır. |
Space | Geçerli hücre bir DataGridViewButtonCell, DataGridViewLinkCellveya DataGridViewCheckBoxCellise ve CellContentClick olaylarını CellClick oluşturur. Geçerli hücre bir DataGridViewButtonCellise, düğmeye de basılır. Geçerli hücre bir DataGridViewCheckBoxCellise, denetim durumunu da değiştirir. |
Girin | Değişiklikleri geçerli hücreye ve satıra işler ve odağı geçerli hücrenin hemen altındaki hücreye taşır. Odak son satırdaysa, odağı taşımadan değişiklikleri işler. |
Esc | Denetim düzenleme modundaysa, düzenlemeyi iptal eder. Denetim düzenleme modunda değilse, denetim düzenlemeyi destekleyen bir veri kaynağına bağlıysa veya sanal mod satır düzeyi işleme kapsamıyla uygulandıysa geçerli satırda yapılan değişiklikleri geri alır. |
Backspace | Hücreyi düzenlerken ekleme noktasından önceki karakteri siler. |
Silme | Hücreyi düzenlerken ekleme noktasından sonraki karakteri siler. |
Ctrl + Enter | Odağı taşımadan geçerli hücrede yapılan değişiklikleri işler. Ayrıca, denetim düzenlemeyi destekleyen bir veri kaynağına bağlıysa veya satır düzeyi işleme kapsamıyla sanal mod uygulandıysa, geçerli satırda yapılan tüm değişiklikleri işler. |
Ctrl + 0 | Hücre düzenlenebiliyorsa geçerli hücreye bir DBNull.Value değer girer. Varsayılan olarak, hücre DBNull değerinin görüntüleme değeri geçerli hücre için etkin özelliğinin DataGridViewCellStyle değeridirNullValue. |
Seçim tuşları
MultiSelect Özelliği olarak ayarlanırsa false
ve SelectionMode özelliği olarak ayarlanırsaCellSelect, gezinti tuşlarını kullanarak geçerli hücrenin değiştirilmesi seçimi yeni hücreye değiştirir. Shift, Ctrl ve Alt tuşları bu davranışı etkilemez.
SelectionMode veya ColumnHeaderSelectolarak ayarlanırsaRowHeaderSelect, aşağıdaki eklemelerle aynı davranış gerçekleşir.
Tuş veya tuş bileşimi | Tanım |
---|---|
Shift + Ara Çubuğu | Tam satırı veya sütunu seçer (satır veya sütun başlığına tıklamayla aynıdır). |
gezinti tuşu (ok tuşu, Page up/down, Home, End) | Tam bir satır veya sütun seçiliyse, geçerli hücreyi yeni satır veya sütun olarak değiştirmek seçimi tam yeni satıra veya sütuna taşır (seçim moduna bağlı olarak). |
olarak ayarlanırsa ve veya olarak ayarlanırsa MultiSelectFullRowSelect, klavyeyi kullanarak geçerli hücreyi yeni bir satır veya sütuna değiştirmek, seçimi tam yeni satıra veya sütuna taşır.FullColumnSelectSelectionModefalse
Shift, Ctrl ve Alt tuşları bu davranışı etkilemez.
olarak ayarlanırsa MultiSelecttrue
, gezinti davranışı değişmez, ancak Shift tuşuna basarken (Ctrl + Shift dahil) klavyeyle gezinmek çok hücreli bir seçimi değiştirir. Gezinti başlamadan önce, denetim geçerli hücreyi bir tutturucu hücre olarak işaretler. Shift tuşuna basarken gezindiğinizde, seçim tutturucu hücre ile geçerli hücre arasındaki tüm hücreleri içerir. Denetimdeki diğer hücreler zaten seçiliyse seçili kalır, ancak klavye gezintisi bunları geçici olarak tutturucu hücre ile geçerli hücre arasına yerleştirirse seçilmemiş olabilirler.
olarak ayarlanırsa ve veya olarak ayarlanırsa MultiSelectFullRowSelect, tutturucu hücrenin ve geçerli hücrenin davranışı aynıdır, ancak yalnızca tam satırlar veya sütunlar seçilir veya seçilmez.FullColumnSelectSelectionModetrue
Varsayılan fare işleme
Temel fare kullanımı
Dekont
Sol fare düğmesiyle bir hücreye tıklanması her zaman geçerli hücreyi değiştirir. Sağ fare düğmesiyle bir hücreye tıklandığında, kullanılabilir olduğunda bir kısayol menüsü açılır.
Fare eylemi | Tanım |
---|---|
Sol fare düğmesi aşağı | Tıklanan hücreyi geçerli hücre yapar ve olayı tetikler DataGridView.CellMouseDown . |
Sol fare düğmesi yukarı | Olayı tetikler DataGridView.CellMouseUp |
Sol fare düğmesine tıklama | ve DataGridView.CellMouseClick olaylarını DataGridView.CellClick yükseltir |
Sol fare düğmesi aşağı ve sütun üst bilgi hücresinde sürükleyin | DataGridView.AllowUserToOrderColumns özelliği isetrue , sütunu yeni bir konuma bırakılabilmesi için taşır. |
Fare seçimi
Ortadaki fare düğmesi veya fare tekerleği ile hiçbir seçim davranışı ilişkilendirilmemiştir.
MultiSelect özelliği olarak ayarlanırsa false
ve SelectionMode özelliği olarak ayarlanırsa CellSelectaşağıdaki davranış gerçekleşir.
Fare eylemi | Tanım |
---|---|
İleri'ye | Yalnızca kullanıcı bir hücreye tıklarsa geçerli hücreyi seçer. Kullanıcı bir satır veya sütun üst bilgisine tıklarsa seçim davranışı olmaz. |
Diskler'e sağ | Varsa bir kısayol menüsü görüntüler. |
veya ColumnHeaderSelectolarak ayarlandığında RowHeaderSelect aynı davranış oluşurSelectionMode, ancak seçim moduna bağlı olarak bir satır veya sütun başlığına tıklandığında satır veya sütunun tamamı seçilir ve geçerli hücre satır veya sütundaki ilk hücreye ayarlanır.
veya FullColumnSelectolarak ayarlanırsa FullRowSelectSelectionMode, satır veya sütundaki herhangi bir hücreye tıklandığında tam satır veya sütun seçilir.
olarak ayarlanırsa MultiSelecttrue
, Ctrl veya Shift tuşlarına basarken bir hücreye tıklandığında çok hücreli bir seçim değiştirilir.
Ctrl tuşuna basarken bir hücreye tıkladığınızda, diğer tüm hücreler geçerli seçim durumlarını korurken hücre seçim durumunu değiştirir.
Shift tuşuna basarken bir hücreyi veya bir hücre serisini tıklattığınızda, seçim geçerli hücre ile ilk tıklamadan önce geçerli hücrenin konumunda bulunan bir tutturucu hücre arasındaki tüm hücreleri içerir. İşaretçiyi birden çok hücreye tıklatıp sürüklediğinizde, tutturucu hücresi, sürükleme işleminin başında tıklanan hücredir. Shift tuşuna basıldığında sonraki tıklamalar geçerli hücreyi değiştirir, ancak tutturucu hücreyi değiştirmez. Denetimdeki diğer hücreler zaten seçiliyse seçili kalır, ancak fare gezintisi bunları geçici olarak tutturucu hücre ile geçerli hücre arasına yerleştirirse seçilmemiş olabilirler.
olarak ayarlanırsa ve veya olarak ayarlanırsa RowHeaderSelectMultiSelect, Shift tuşuna basıldığında bir satır veya sütun üst bilgisine (seçim moduna bağlı olarak) tıklandığında, böyle bir seçim varsa var olan tam satır veya sütun seçiminde değişiklik yapılır.ColumnHeaderSelectSelectionModetrue
Aksi takdirde, seçimi temizler ve tam satır veya sütunlardan oluşan yeni bir seçim başlatır. Ancak, Ctrl tuşuna basarken bir satır veya sütun başlığına tıklanması, tıklanan satırı veya sütunu geçerli seçimi başka bir şekilde değiştirmeden geçerli seçime ekler veya kaldırır.
olarak ayarlanırsa ve veya olarak ayarlanırsa FullRowSelectMultiSelect, Shift veya Ctrl tuşlarına basarken bir hücreye tıklandığında, yalnızca tam satır ve sütunların etkilenmesi dışında aynı şekilde davranır.FullColumnSelectSelectionModetrue
Ayrıca bkz.
.NET Desktop feedback
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin