سؤال

لدي تطبيق WPF Windows. أحتاج إلى تغيير لون خلفية شريط العنوان. كيف أقوم بذلك؟

هل كانت مفيدة؟

المحلول

في WPF، يعد TitleBar جزءا من منطقة غير عميل، والتي لا يمكن تعديلها من خلال فئة Window WPF. تحتاج إلى التعامل مع مقابض Win32 (إذا كنت أتذكر بشكل صحيح).
هذه المقالة قد تكون مفيدة لك: نافذة مخصصة كروم في WPF.

نصائح أخرى

إليك مثال على كيفية تحقيق هذا:

    <Grid DockPanel.Dock="Right"
      HorizontalAlignment="Right">

        <StackPanel Orientation="Horizontal"
                HorizontalAlignment="Right"
                VerticalAlignment="Center">

            <Button x:Name="MinimizeButton"
                KeyboardNavigation.IsTabStop="False"
                Click="MinimizeWindow"
                Style="{StaticResource MinimizeButton}" 
                Template="{StaticResource MinimizeButtonControlTemplate}" />

            <Button x:Name="MaximizeButton"
                KeyboardNavigation.IsTabStop="False"
                Click="MaximizeClick"
                Style="{DynamicResource MaximizeButton}" 
                Template="{DynamicResource MaximizeButtonControlTemplate}" />

            <Button x:Name="CloseButton"
                KeyboardNavigation.IsTabStop="False"
                Command="{Binding ApplicationCommands.Close}"
                Style="{DynamicResource CloseButton}" 
                Template="{DynamicResource CloseButtonControlTemplate}"/>

        </StackPanel>
    </Grid>
</DockPanel>

التعامل مع الأحداث انقر في الكود الخلف.

ل mousedown -

App.Current.MainWindow.DragMove();

لتقليل زر -

App.Current.MainWindow.WindowState = WindowState.Minimized;

ل doubleclick و maximizeclick

        if (App.Current.MainWindow.WindowState == WindowState.Maximized)
        {
            App.Current.MainWindow.WindowState = WindowState.Normal;
        }
        else if (App.Current.MainWindow.WindowState == WindowState.Normal)
        {
            App.Current.MainWindow.WindowState = WindowState.Maximized;
        }

آمل أن يساعد هذا.

يمكنك أيضا إنشاء نافذة بلا حدود، وجعل الحدود وشريط العنوان بنفسك

تحقق من العينة التالية WPF تخصيص مظهر نافذة في XAML

توضح هذه العينة كيفية تخصيص نمط / ظهور النافذة بشكل كامل، بما في ذلك المناطق غير العميلة: شريط العنوان والحدود والأزرار الأقصى والحد الأقصى والأزرار المحددة أثناء توفير جميع الوظائف المتوقعة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top