ปุ่มช่วยเหลือแบบใช้ซ้ำได้และป๊อปอัปช่วยเหลือ

ฉันมีมุมมองประมาณ 30 ครั้งและ VM ที่เกี่ยวข้องในแอปพลิเคชันของฉัน ฉันมี HelpButton ถัดจากส่วนควบคุมผู้ใช้ส่วนใหญ่ ซึ่งให้คำอธิบายว่าช่องนี้มีไว้เพื่ออะไร เมื่อผู้ใช้คลิกที่ Button นั้น Popup จะเปิดขึ้นและให้คำอธิบาย อะไรจะเป็นวิธีที่ดีที่สุดในการทำให้ฟังก์ชันนี้สามารถนำมาใช้ซ้ำได้ในทุกมุมมอง

ฉันได้สร้าง ControlTemplate สำหรับ HelpButton และความช่วยเหลือ Popup แล้ว แต่ฉันจะไปไกลกว่านี้ได้ไหม ขอบคุณ.

<Style x:Key="HelpButton" TargetType="{x:Type Button}" >
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="{x:Type Button}">
                <Ellipse Focusable="True" Height="16" Width="16">
                    <Ellipse.Fill>
                        <ImageBrush ImageSource="../../Resources/Icons/Help.png" />
                    </Ellipse.Fill>
                </Ellipse>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

person AngieA    schedule 22.07.2010    source แหล่งที่มา


คำตอบ (1)


ฉันเห็นว่ามีการถามคำถามนี้มาระยะหนึ่งแล้ว แต่ฉันคิดว่าจะตอบกลับในกรณีที่มีคนพบปัญหานี้และกำลังมองหาวิธีแก้ไข

ใส่ไว้ใน ResourceDictionary ใน Resources.xaml แยกต่างหากที่สามารถเข้าถึงได้จากมุมมองอื่นทั้งหมดของคุณ:

<ResourceDictionary xmlns...>
    <Style x:Key="HelpButton" TargetType="{x:Type Button}" >
        ...
    </Style>
</ResourceDictionary>

จากนั้นใช้จากส่วนทรัพยากรของคุณ (อย่างที่คุณไม่เคยสงสัยมาก่อน) ใน xaml ของคุณดังนี้:

<UserControl xmlns...>
    <UserControl.Resources>
        <ResourceDictionary Source="Resources.xaml"/>
    </UserControl.Resources>

    <Button Style="{StaticResource HelpButton}" />
</UserControl>
person Christina    schedule 30.04.2012