Megosztás a következőn keresztül:


Elemleírás áttekintése

Az eszköztipp egy kis előugró ablak, amely akkor jelenik meg, amikor az egérmutatót egy elem - például egy Button- fölé helyezik. Ez a témakör bemutatja az elemleírást, és ismerteti az elemleírások tartalmának létrehozását és testreszabását.

Mi az a súgó szöveg?

Amikor egy felhasználó egy elemleírással rendelkező elem fölé helyezi az egérmutatót, egy elemleírás-tartalmat tartalmazó ablak (például egy vezérlő működését leíró szöveges tartalom) jelenik meg egy meghatározott ideig. Ha a felhasználó távol helyezi az egérmutatót a vezérlőtől, az ablak eltűnik, mert az elemleírás tartalma nem tudja fogadni a fókuszt.

Az elemleírás tartalma tartalmazhat egy vagy több sornyi szöveget, képet, alakzatot vagy más vizuális tartalmat. Egy vezérlőelem elemleírását úgy határozhatja meg, hogy az alábbi tulajdonságok egyikét az elemleírás tartalmára állítja.

Az, hogy melyik tulajdonságot használja, attól függ, hogy az elemleírást meghatározó vezérlő a FrameworkContentElement vagy a FrameworkElement osztályból öröklődik.

Tooltip létrehozása

Az alábbi példa bemutatja, hogyan hozhat létre egy egyszerű elemleírást azáltal, hogy egy vezérlő tulajdonságát beállítja egy szöveges karakterláncra.

<Button ToolTip="Click to submit your information" 
        Click="SubmitCode" Height="20" Width="50">Submit</Button>

Az ToolTip objektumot súgóként is definiálhatja. Az alábbi példa a XAML használatával egy ToolTip objektumot eszköztippként határoz meg egy TextBox elemhez. Vegye figyelembe, hogy a példa a ToolTip tulajdonság beállításával adja meg a FrameworkElement.ToolTip tulajdonságot.

<TextBox HorizontalAlignment="Left">ToolTip with non-text content
  <TextBox.ToolTip>
    <ToolTip>
      <DockPanel Width="50" Height="70">
        <Image Source="data\flower.jpg"/>
        <TextBlock>Useful information goes here.</TextBlock>
      </DockPanel>
    </ToolTip>
  </TextBox.ToolTip>
</TextBox>

Az alábbi példa kód használatával hoz létre objektumot ToolTip . A példa létrehoz egy ToolTip (tt) és társítja azt egy Button.

button = new Button();
button.Content = "Hover over me.";
tt = new ToolTip();
tt.Content = "Created with C#";
button.ToolTip = tt;
cv2.Children.Add(button);
button = New Button()
button.Content = "Hover over me."
tt = New ToolTip()
tt.Content = "Created with Visual Basic"
button.ToolTip = tt
cv2.Children.Add(button)

Akkor is létrehozhat elemleírás-tartalmat, ha az nincs ToolTip objektumként definiálva, ha a tartalmat egy elrendezési elembe, például egy DockPanel zárja. Az alábbi példa bemutatja, hogyan állíthat be egy ToolTip tulajdonságot egy TextBox vezérlőelemben lévő DockPanel által határolt tartalomra.

<TextBox>
  ToolTip with image and text
  <TextBox.ToolTip>
       <StackPanel>
        <Image Source="data\flower.jpg"/>
        <TextBlock>Useful information goes here.</TextBlock>
      </StackPanel>
  </TextBox.ToolTip>

A ToolTip és a ToolTipService osztályok tulajdonságainak használata

Az elemleírás tartalma testre szabható a vizualizáció tulajdonságainak beállításával és a stílusok alkalmazásával. Ha objektumként definiálja az elemleírás tartalmát ToolTip , beállíthatja az ToolTip objektum vizualizációs tulajdonságait. Ellenkező esetben be kell állítania az egyenértékű csatolt tulajdonságokat az ToolTipService osztályban.

Az elemleírások tartalmának helyzetét a ToolTip és ToolTipService tulajdonságok használatával történő meghatározásának példáját lásd: Elemleírás elhelyezése.

Egy tip megjelenésének formázása

ToolTip megjelenését egyéni Style definiálásával állíthatja be. Az alábbi példa egy Style nevű Simple határoz meg, amely bemutatja, hogyan lehet elmozdítani a ToolTip elhelyezését, és hogyan módosíthatja annak megjelenését a következő elemek beállításával: Background, Foreground, FontSize és FontWeight.

<Style TargetType="ToolTip">
  <Setter Property = "HorizontalOffset" Value="10"/>
  <Setter Property = "VerticalOffset" Value="10"/>
  <Setter Property = "Background" Value="LightBlue"/>
  <Setter Property = "Foreground" Value="Purple"/>
  <Setter Property = "FontSize" Value="14"/>
  <Setter Property = "FontWeight" Value="Bold"/>
</Style>

Az ToolTipService időintervallum-tulajdonságainak használata

Az ToolTipService osztály a következő tulajdonságokat biztosítja az elemleírások megjelenítési idejének beállításához: InitialShowDelay, BetweenShowDelayés ShowDuration.

Az InitialShowDelay és ShowDuration tulajdonságokkal megadhatja a késleltetést, amely általában rövid, mielőtt egy ToolTip megjelenik, valamint azt, hogy mennyi ideig maradjon látható a ToolTip. További információkért lásd: Elemleírások megjelenítésének késleltetése.

A BetweenShowDelay tulajdonság meghatározza, hogy a különböző vezérlők elemleírásai kezdeti késés nélkül jelennek-e meg, amikor az egérmutatót gyorsan egymás közé helyezi. A tulajdonságról további információt a BetweenShowDelayBetweenShowDelay tulajdonság használata című témakörben talál.

Az alábbi példa bemutatja, hogyan állíthatja be ezeket a tulajdonságokat egy elemleíráshoz.

<Ellipse Height="25" Width="50" 
         Fill="Gray" 
         HorizontalAlignment="Left"
         ToolTipService.InitialShowDelay="1000"
         ToolTipService.ShowDuration="7000"
         ToolTipService.BetweenShowDelay="2000">
  <Ellipse.ToolTip>
    <ToolTip Placement="Right" 
             PlacementRectangle="50,0,0,0"
             HorizontalOffset="10" 
             VerticalOffset="20"
             HasDropShadow="false"
             Opened="whenToolTipOpens"
             Closed="whenToolTipCloses"
             >
      <BulletDecorator>
        <BulletDecorator.Bullet>
          <Ellipse Height="10" Width="20" Fill="Blue"/>
        </BulletDecorator.Bullet>
        <TextBlock>Uses the ToolTip Class</TextBlock>
      </BulletDecorator>
    </ToolTip>
  </Ellipse.ToolTip>
</Ellipse>

Lásd még