Názorný postup: Programování proti událostem ovládacího prvku NamedRange
Tento návod ukazuje, jak přidat NamedRange ovládací prvek na listu aplikace Microsoft Office Excel a program proti jeho událostí pomocí nástroje pro vývoj Office v sadě Visual Studio.
Platí pro: Informace v tomto tématu se vztahují na projekty na úrovni dokumentu v aplikacích Excel 2013 a Excel 2010. Další informace naleznete v tématu Funkce aplikace Office a typ projektu.
Během tohoto návodu se naučíte, jak:
Přidat NamedRange ovládací prvek na listu.
Program proti NamedRange události.
Otestujte váš projekt.
[!POZNÁMKA]
Váš počítač může zobrazit jiné názvy nebo umístění pro některé prvky uživatelského rozhraní sady Visual Studio v následujících pokynech.Tyto prvky jsou určeny verzí aplikace Visual Studio a použitým nastavením.Další informace naleznete v tématu Nastavení aplikace Visual Studio.
Požadavky
Chcete-li dokončit tento návod, potřebujete následující komponenty:
-
Edice sady Visual Studio 2012, která zahrnuje nástroje Microsoft Office Developer Tools. Další informace naleznete v tématu [Konfigurace počítače vyvinout řešení Office](bb398242\(v=vs.110\).md).
- Excel 2013 nebo Excel 2010.
Vytváření projektu
V tomto kroku vytvoříte projekt sešitu aplikace Excel pomocí aplikace Visual Studio.
Vytvoření nového projektu
Vytvořte projekt sešitu aplikace Excel se název složky s názvem rozsah události.Ujistěte se, že vytvořit nový dokument je vybrán.Další informace naleznete v tématu Jak: vytvoření Office projekty v aplikaci Visual Studio.
Visual Studio otevře nový sešit aplikace Excel v návrháři a přidá do projektu Moje události pojmenovanou oblast na Průzkumníku.
Přidání textu a pojmenované oblasti listu
Protože hostitelský ovládací prvky jsou rozšířeny objektů sady Office, můžete je přidat do dokumentu stejným způsobem by přidat nativní objekt.Můžete například přidat aplikace Excel NamedRange listu otevřením ovládacího prvku Vložení nabídce přejdete názeva volba definovat.Můžete také přidat NamedRange ovládací prvek přetažením z nástrojů do listu.
V tomto kroku přidáte ovládací prvky dvě pojmenovanou oblast na listu pomocí nástrojůa přidat text do listu.
Přidat oblast listu
Ověřte, zda Moje Events.xlsx oblast s názvem je sešit otevřen v návrháři Visual Studio s Sheet1 zobrazí.
Z Excel ovládací prvky karty z panelu nástrojů přetáhněte NamedRange buňky ovládacího prvku A1 v Sheet1.
Ovládací prvek NamedRange zobrazí se dialogové okno.
Ověřte, zda $1 $ se zobrazí v poli upravitelný text a buňka A1 je vybrán.Pokud není, klepněte na buňku A1 jej vyberte.
Klikněte na tlačítko OK.
Buňka A1 se stává oblast s názvem namedRange1.Je žádné viditelné označení listu, ale namedRange1 se zobrazí v název pole (umístěný nad na levé straně listu) buňky při A1 je vybrána.
Přidat další NamedRange buňky ovládacího prvku B3.
Ověřte, zda $B$ 3 se zobrazí v poli upravitelný text a buňka B3 je vybrán.Pokud není, klepněte na buňku B3 jej vyberte.
Klikněte na tlačítko OK.
Buňka B3 se stává oblast s názvem namedRange2.
Přidání textu do listu
V buňce A1, zadejte následující text:
Toto je příklad ovládacího prvku NamedRange.
V buňce A3 (vlevo od namedRange2), zadejte následující text:
Události:
V následující části napíšete kód, který vloží text do namedRange2 a upravuje vlastnosti namedRange2 ovládací prvek v reakci BeforeDoubleClick, Change, a SelectionChange události namedRange1.
Přidání kódu reagovat na událost BeforeDoubleClick
Vložení textu do NamedRange2 na základě události BeforeDoubleClick
V Průzkumníku, klepněte pravým tlačítkem Sheet1.vb nebo Sheet1.cs a vyberte Zobrazení kódu.
Přidejte kód tak, aby se namedRange1_BeforeDoubleClick obslužné rutiny události vypadá následovně:
Private Sub NamedRange1_BeforeDoubleClick( _ ByVal Target As Microsoft.Office.Interop.Excel.Range, ByRef Cancel As Boolean) _ Handles NamedRange1.BeforeDoubleClick With Me.NamedRange2 .Value2 = "The BeforeDoubleClick event occurred." .Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Red) .Font.Italic = True End With End Sub
private void namedRange1_BeforeDoubleClick( Microsoft.Office.Interop.Excel.Range Target, ref bool Cancel) { this.namedRange2.Value2 = "The BeforeDoubleClick event occurred."; this.namedRange2.Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Red); this.namedRange2.Font.Italic = true; }
V jazyce C# musíte přidat obslužné rutiny událostí pro pojmenovanou oblast je znázorněno Startup události níže.Informace o vytváření obslužných rutin událostí, Jak: vytvoření obslužné rutiny událostí v projektech Office.
this.namedRange1.BeforeDoubleClick += new Microsoft.Office.Interop.Excel. DocEvents_BeforeDoubleClickEventHandler(namedRange1_BeforeDoubleClick); this.namedRange1.Change += new Microsoft.Office.Interop.Excel. DocEvents_ChangeEventHandler(namedRange1_Change); this.namedRange1.SelectionChange +=new Microsoft.Office.Interop.Excel. DocEvents_SelectionChangeEventHandler(namedRange1_SelectionChange);
Přidání kódu reagovat na událost změny
Vložení textu do namedRange2 na základě Změna události
Přidejte kód tak, aby se NamedRange1_Change obslužné rutiny události vypadá následovně:
Private Sub NamedRange1_Change(ByVal Target As Microsoft.Office.Interop.Excel.Range) _ Handles NamedRange1.Change With Me.NamedRange2 .Value2 = "The Change event occurred." .Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Blue) .Font.Italic = False End With End Sub
private void namedRange1_Change(Microsoft.Office.Interop.Excel.Range Target) { this.namedRange2.Value2 = "The Change event occurred."; this.namedRange2.Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Blue); this.namedRange2.Font.Italic = false; }
[!POZNÁMKA]
Protože poklepáním na buňku v oblasti aplikace Excel přejde do režimu úprav Change události dojde při výběru je přesunuta mimo rozsah i v případě, že došlo k žádné změny v textu.
Přidání kódu reagovat na události SelectionChange
Vložení textu do namedRange2 na základě události SelectionChange
Přidejte kód tak, aby se NamedRange1_SelectionChange obslužné rutiny události vypadá následovně:
Private Sub NamedRange1_SelectionChange(ByVal Target As Microsoft.Office.Interop.Excel.Range) _ Handles NamedRange1.SelectionChange With Me.NamedRange2 .Value2 = "The SelectionChange event occurred." .AddComment("SelectionChange always occurs before BeforeDoubleClick.") .Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Black) End With End Sub
private void namedRange1_SelectionChange(Microsoft.Office.Interop.Excel.Range Target) { this.namedRange2.Value2 = "The SelectionChange event occurred."; this.namedRange2.AddComment("SelectionChange always occurs before BeforeDoubleClick."); this.namedRange2.Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Black); }
[!POZNÁMKA]
Protože poklepáním na buňku v oblasti aplikace Excel způsobuje přesunutí do oblasti, SelectionChange události dochází před událostí BeforeDoubleClick události.
Testování aplikace
Nyní můžete otestovat ověřte text popisující události ze sešitu NamedRange ovládacího prvku vložena do jiné pojmenované oblasti při události jsou vyvolány.
Testování dokumentu
Stisknutím klávesy F5 spustit projektu.
Umístěte kurzor v namedRange1a ověřte, zda text týkající SelectionChange vložené události a komentáře je vložena do listu.
Poklepáním uvnitř namedRange1a ověřte, zda text týkající se BeforeDoubleClick události vložena s červeným textem psaným kurzívou v namedRange2.
Klepněte mimo namedRange1 a Poznámka k události change dojde při ukončení režimu úprav, přestože žádné změny v textu.
Změnit text v namedRange1.
Klepněte mimo namedRange1a ověřte, zda text týkající se Change události vložena s modrým textem do namedRange2.
Další kroky
Tento návod ukazuje základy programování v události NamedRange řízení.Zde je zřejmě další úkol:
- Nasazení projektu.Další informace naleznete v tématu Nasazení řešení Office.
Viz také
Úkoly
Jak: Změna velikosti ovládacích prvků NamedRange
Jak: přidání ovládacích prvků NamedRange listy
Jak: vytvoření obslužné rutiny událostí v projektech Office
Koncepty
Přehled ovládací prvky hostitel a Host položky