首页 > 其他分享 >WPF|--XAML|--使用其它名称空间中类型

WPF|--XAML|--使用其它名称空间中类型

时间:2024-02-26 12:55:07浏览次数:27  
标签:02 06 -- XAML System mscorlib NET WPF

关键字词




XAML -- 使用其它名称空间中类型

语法格式

<!-- {}括起来的表示占位符 -->
xmlns:{Prefix}="clr-namespace:{Namespace};assembly={AssemblyName}"

示例

<!-- 演示如何访问System名称空间中的基本类型,并将其映射为前缀"sys_mine:" -->
<UserControl x:Class="WpfApp1.Views.SystemNamespaceUserControl"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             xmlns:local="clr-namespace:WpfApp1.Views"
             xmlns:sys_mine="clr-namespace:System;assembly=System.Runtime"
             mc:Ignorable="d" 
             d:DesignHeight="450" d:DesignWidth="800">
    <Grid>
        <Button Width="500" Height="50">
            <sys_mine:String>使用System.Runtime命名空间下的String类型</sys_mine:String>
        </Button>
    </Grid>
</UserControl>

<UserControl x:Class="WpfApp1.Views.SystemNamespaceUserControl"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             xmlns:local="clr-namespace:WpfApp1.Views"
             xmlns:sys_mine="clr-namespace:System;assembly=System.Runtime"
             mc:Ignorable="d" 
             d:DesignHeight="450" d:DesignWidth="800">
    <Grid>
        <ListBox Width="400" Height="200">
            <ListBoxItem>
                <sys_mine:DateTime>02/06/2024 18:00</sys_mine:DateTime>
            </ListBoxItem>
            <ListBoxItem>
                <sys_mine:DateTime>02/06/2024 18:10</sys_mine:DateTime>
            </ListBoxItem>
            <ListBoxItem>
                <sys_mine:DateTime>02/06/2024 18:20</sys_mine:DateTime>
            </ListBoxItem>
        </ListBox>
    </Grid>
</UserControl>

问题1 -- 未找到程序集“mscorlib;”。

<!-- 项目属性 -->
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>WinExe</OutputType>
    <TargetFramework>net7.0-windows</TargetFramework>
    <Nullable>enable</Nullable>
    <UseWPF>true</UseWPF>
  </PropertyGroup>
</Project>
<UserControl x:Class="WpfApp1.Views.SystemNamespaceUserControl"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             xmlns:local="clr-namespace:WpfApp1.Views"
             xmlns:sys="clr-namespace:System;assembly=mscorlib;"
             mc:Ignorable="d" 
             d:DesignHeight="450" d:DesignWidth="800">
    <Grid>
<!-- 有报错信息的 -->
    </Grid>
</UserControl>
# 报错信息

错误	
XLS0418	未找到程序集“mscorlib;”。请确保不缺少程序集引用并且已生成你的项目和所有引用的程序集。

书中使用的框架是.NET 4.5, 我这个用的是.NET7.0, 可能因为这个原因.

问题2 -- System.Runtime Vs System Vs mscorlib ...


这错中复杂的关系, 也有一定的历史渊源...

在.NET Framerwork4.5下, 是有"mscorlib"程序集的,书中的示例就是

标签:02,06,--,XAML,System,mscorlib,NET,WPF
From: https://www.cnblogs.com/love-zf/p/18034090

相关文章

  • 《程序是怎样跑起来的》第六章读后感
    在阅读《程序是怎样跑起来的》这本书的第六章后,我对编写程序的底层逻辑有了更深入的理解。这一章专注于程序编写中的逻辑思维,让我认识到了算法的重要性。作者通过引入各种经典的算法,例如排序和搜索算法,展示了如何用代码解决常见问题。我被这些算法背后的巧妙思维所吸引,它们以简洁......
  • 《程序是怎样跑起来的》第七章读后感
    在阅读《程序是怎样跑起来的》这本书的第七章后,我对编程的理解有了新的提升。这一章主要讲解了异常处理和程序调试的重要性,让我意识到编写程序不仅需要逻辑思维和创意,还需要严谨的态度和细致的耐心。作者首先介绍了异常的概念,让我明白了程序在运行过程中可能会遇到各种预料之外的......
  • 《程序是怎样跑起来的》第八章读后感
    在阅读《程序是怎样跑起来的》这本书的第八章后,我对面向对象编程(OOP)这一重要的编程范式有了更深入的理解。作者通过清晰的解释和丰富的示例,让我领会到了OOP的核心思想:将复杂的程序分解为相对简单的对象,通过这些对象之间的交互来实现程序的功能。本章首先介绍了类和对象的概念,让我......
  • Taurus.MVC WebMVC 入门开发教程2:一个简单的页面呈现
    前言:在上一篇中,我们了解了如何下载、配置和运行Taurus.MVCWebMVC框架。现在,让我们开始编写一个简单的页面并进行呈现。步骤1:创建控制器首先,我们需要创建一个控制器来处理页面呈现的逻辑。在VisualStudio中,右键单击项目文件夹,选择「添加」->「类」。在弹出的对话框中,......
  • 《程序是怎样跑起来的》第九章读后感
    在阅读《程序是怎样跑起来的》这本书的第九章后,我对网络编程有了更深入的了解。这一章以浅显易懂的方式介绍了计算机网络的基本概念,让我对网络通信的底层原理和技术有了初步的认识。作者首先讲解了计算机网络的基础,包括网络的构成、网络协议以及IP地址和端口等核心概念。我明白了......
  • 《系统科学方法概论》第五章读书笔记
    首先,组建现代管理系统必须遵循远离平衡态原则。这也就是说,构成管理系统的人员必须具有各不相同的能力和水平,尤其是作为管理系统的第一把手应具备把握全局的能力和权力,而其他成员则不必具备把握全局的能力和权力,或只需具备把握某-方面全局的能力和权力即可。如果-一个管理系统的所......
  • 《程序是怎样跑起来的》第四章
    在阅读《程序是怎样跑起来的》这本书的第四章,作者详细介绍了程序从编写到执行的全过程,将复杂的计算机原理用通俗易懂的语言呈现,让我这个编程初学者也能轻松理解。特别是对于编译器和解释器的角色解析,以及它们如何将源代码转换为机器可以执行的代码,这部分内容对我帮助极大。我明白......
  • 记一次 splice 导致 io.Copy 阻塞的排查过程
    记一次splice导致io.Copy阻塞的排查过程简而言之,net.TCPConn的ReadFrom零拷贝实现splice在1.21.0-1.21.4删除了SPLICE_F_NONBLOCK参数,导致在CentOS7.2(内核版本3.10.0)上splice被阻塞。相关的issue为https://github.com/golang/go/issues/59041这个问题......
  • K8S测试lcoal StorageClass PVC
    测试lcoalStorageClassvilocal-path.yaml---apiVersion:v1kind:PersistentVolumeClaimmetadata:name:local-path-pvcspec:storageClassName:nfs#<===使用哪个SCaccessModes:-ReadWriteOnceresources:requests:storage:10Gi---......
  • Flutter中如何计算一个Container可以完美填充多少文字
    要想知道一个Container可以填满多少个文字,我们只需算出一行可以填充的文字数量,再算出可以填充的最大行数,将两者相乘就行。遇到问题先干嘛?当然是用搜索引擎先检索一下答案。我检索到了一篇标题为《Flutter-如何计算文字宽高》的文章(因为我在站内没有搜到这篇文章,所有有兴趣的可......