请问关于c的具体应用场景有哪些?

2026-04-29 01:252阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计598个文字,预计阅读时间需要3分钟。

请问关于c的具体应用场景有哪些?

我有页面管理器,它保存一组页面(usercontrols),将我开发的页面发送到每个页面,因此可以随时调用SwitchPage方法,将链接从一个页面切换到另一个页面。这样非常好用,可以让我快速切换菜单位置。

我有一个页面管理器,它保存一组页面(usercontrols),将自己发送到每个页面,因此可以随时调用其SwitchPage方法,使我能够将链接从一个页面放到另一个页面.这很好用,可以让我快速菜单等.

public partial class PageManager : UserControl { private Dictionary<string, UserControl> Pages = new Dictionary<string, UserControl>(); private string defaultPageIdCode = "page1"; private UserControl currentPage; private string currentPageIdCode; public PageManager() { InitializeComponent(); LoadPages(); SwitchPage(defaultPageIdCode); } private void LoadPages() { Pages.Add("page1", new Page1(this)); Pages.Add("page2", new Page2(this)); } public void SwitchPage(string pageIdCode) { currentPageIdCode = pageIdCode; currentPage = Pages[pageIdCode]; PageArea.Content = currentPage; } }

但是,每个页面(UserControl)都有重复的功能,例如在内部保存PageManager对象,我想将其放在基类中:

的Page1.xaml:

<UserControl x:Class="TestPageManager23434.Page1" xmlns="schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="schemas.microsoft.com/winfx/2006/xaml"> <StackPanel Background="White" Width="400" Height="400" > <TextBlock Text="this is page1"/> <Button Content="go to page 2" Click="Button_Click" HorizontalAlignment="Left" Width="200" Height="30" /> </StackPanel> </UserControl>

Page1.xaml.cs:

public partial class Page1 : UserControl { private PageManager pageManager; public Page1(PageManager pageManager) { this.pageManager = pageManager; InitializeComponent(); } private void Button_Click(object sender, System.Windows.RoutedEventArgs e) { pageManager.SwitchPage("page2"); } }

Page2.xaml:

<UserControl x:Class="TestPageManager23434.Page2" xmlns="schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="schemas.microsoft.com/winfx/2006/xaml"> <StackPanel Background="White" Width="400" Height="400" > <TextBlock Text="this is page2"/> <Button Content="go back to page 1" Click="Button_Click" HorizontalAlignment="Left" Width="250" Height="30" /> </StackPanel> </UserControl>

Page2.xaml.cs:

public partial class Page2 : UserControl { private PageManager pageManager; public Page1(PageManager pageManager) { this.pageManager = pageManager; InitializeComponent(); } private void Button_Click(object sender, System.Windows.RoutedEventArgs e) { pageManager.SwitchPage("page1"); } }

如何让每个UserControl继承一个基类?它不起作用,因为每个UserControl都有不能继承的XAML.如果我尝试从继承UserControl的普通类继承,那么它告诉我:

Partial declarations of
‘TestPageManager23434.Page2’ must not
specify different base classes

而不是将根元素声明为UserControl,而是将其声明为派生类.您还需要指定命名空间,例如

<local:PageBase x:Class="TestPageManager23434.Page2" xmlns="schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="schemas.microsoft.com/winfx/2006/xaml" xmlns:local="clr-namespace:TestPageManager23434"> </local:PageBase>

请问关于c的具体应用场景有哪些?

本文共计598个文字,预计阅读时间需要3分钟。

请问关于c的具体应用场景有哪些?

我有页面管理器,它保存一组页面(usercontrols),将我开发的页面发送到每个页面,因此可以随时调用SwitchPage方法,将链接从一个页面切换到另一个页面。这样非常好用,可以让我快速切换菜单位置。

我有一个页面管理器,它保存一组页面(usercontrols),将自己发送到每个页面,因此可以随时调用其SwitchPage方法,使我能够将链接从一个页面放到另一个页面.这很好用,可以让我快速菜单等.

public partial class PageManager : UserControl { private Dictionary<string, UserControl> Pages = new Dictionary<string, UserControl>(); private string defaultPageIdCode = "page1"; private UserControl currentPage; private string currentPageIdCode; public PageManager() { InitializeComponent(); LoadPages(); SwitchPage(defaultPageIdCode); } private void LoadPages() { Pages.Add("page1", new Page1(this)); Pages.Add("page2", new Page2(this)); } public void SwitchPage(string pageIdCode) { currentPageIdCode = pageIdCode; currentPage = Pages[pageIdCode]; PageArea.Content = currentPage; } }

但是,每个页面(UserControl)都有重复的功能,例如在内部保存PageManager对象,我想将其放在基类中:

的Page1.xaml:

<UserControl x:Class="TestPageManager23434.Page1" xmlns="schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="schemas.microsoft.com/winfx/2006/xaml"> <StackPanel Background="White" Width="400" Height="400" > <TextBlock Text="this is page1"/> <Button Content="go to page 2" Click="Button_Click" HorizontalAlignment="Left" Width="200" Height="30" /> </StackPanel> </UserControl>

Page1.xaml.cs:

public partial class Page1 : UserControl { private PageManager pageManager; public Page1(PageManager pageManager) { this.pageManager = pageManager; InitializeComponent(); } private void Button_Click(object sender, System.Windows.RoutedEventArgs e) { pageManager.SwitchPage("page2"); } }

Page2.xaml:

<UserControl x:Class="TestPageManager23434.Page2" xmlns="schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="schemas.microsoft.com/winfx/2006/xaml"> <StackPanel Background="White" Width="400" Height="400" > <TextBlock Text="this is page2"/> <Button Content="go back to page 1" Click="Button_Click" HorizontalAlignment="Left" Width="250" Height="30" /> </StackPanel> </UserControl>

Page2.xaml.cs:

public partial class Page2 : UserControl { private PageManager pageManager; public Page1(PageManager pageManager) { this.pageManager = pageManager; InitializeComponent(); } private void Button_Click(object sender, System.Windows.RoutedEventArgs e) { pageManager.SwitchPage("page1"); } }

如何让每个UserControl继承一个基类?它不起作用,因为每个UserControl都有不能继承的XAML.如果我尝试从继承UserControl的普通类继承,那么它告诉我:

Partial declarations of
‘TestPageManager23434.Page2’ must not
specify different base classes

而不是将根元素声明为UserControl,而是将其声明为派生类.您还需要指定命名空间,例如

<local:PageBase x:Class="TestPageManager23434.Page2" xmlns="schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="schemas.microsoft.com/winfx/2006/xaml" xmlns:local="clr-namespace:TestPageManager23434"> </local:PageBase>

请问关于c的具体应用场景有哪些?