如何在 MAUI 中设置窗口大小?
背景信息:我只关心此应用程序的 Windows - 我选择了 MAUI,因此我可以将 Blazor 用于桌面应用程序。由于某种原因,默认窗口尺寸很大(几乎占据了我所有的 1440p 屏幕空间)。我正在制作的应用程序只需要大约 600x600。尽管我很高兴让应用程序能够响应,但有一种方法可以固定窗口大小也会很有帮助。
我是WPF的新手,我正在开发WPF的导航应用程序,
<NavigationWindow x:Class="KioskTraffic.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="768" Width="1024" Source="Home.xaml"
WindowState="Maximized" ResizeMode="NoResize" ShowsNavigationUI="False" WindowStyle="None" Cursor="Arrow" Closing="NavigationWindow_Closing"></NavigationWindow>
Run Code Online (Sandbox Code Playgroud)
我有一些页面显示在这个navigarionwindow中
<Page x:Class="KioskTraffic.Page1"
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"
mc:Ignorable="d"
Height="768" Width="1024"
Title="Page1">
Run Code Online (Sandbox Code Playgroud)
我怎么知道哪个页面当前在NavigationWindow.xaml.cs文件下运行?
我在这个导航窗口中有一个计时器,想要检查当前页面是否为home.xaml,然后我不想启动该计时器.
我是一名想成为游戏开发者的人,我更喜欢使用C#.当我问到在C#中编写实时应用程序的缺点是什么时,我得到了一个重要的观点:垃圾收集及其对性能的不可预测的影响.
我的反问题是,非托管C#怎么样?它与C++的比较(性能方面)如何?它是开发软件的有效选择吗?
我没有听到很多关于非托管c#和所有"非托管c#与C++"的问题,我看到的问题没有得到答复或回答不准确.这些问题不是堆栈溢出.
编辑:
我相信无管理的C#是"不安全代码".
此代码无法编译:
internal class Foo {}
public abstract class SomeBaseClass
{
protected internal void ProcessFoo(Foo value)
{
// doing something...
}
}
Run Code Online (Sandbox Code Playgroud)
编译失败说明:
可访问性不一致:参数类型Foo比方法更难访问SomeBaseClass.ProcessFoo
我有一个接口IEnumerable用于List <>,Array <>和Dictionary <>的模板类.我希望使用typedef来获得他们的模板类型T.
我希望做到以下几点.
class IEnumerable
{
public:
virtual typedef int TemplateType;
}
Run Code Online (Sandbox Code Playgroud)
然后覆盖继承的成员,但你不能创建一个虚拟的typedef.那么有没有其他方法可以获得未知模板类的类型(IEnumerable不是模板)?
今天,当编写和运行一些测试时,我发现即使我的类实现了一个IEquatable<MyClass>接口,也Assert.AreEqual(instanceOfMyClass, anotherInstance);导致错误。
事实证明,无论如何,都是Assert.AreEquals调用object.Equals(object obj)而不是正确的MyClass.Equals(MyClass obj)函数。
在有逻辑原因的假设下,这是什么?
我刚刚升级到 Entity Framework Core 2,现在我遇到了一个额外的列存在问题并且有一个唯一的键,即使它不在我的模型中并且没有在其他任何地方定义。
指数:
migrationBuilder.CreateTable(
name: "Vouchers",
columns: table => new
{
Id = table.Column<int>(nullable: false)
.Annotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn),
Code = table.Column<Guid>(nullable: false),
IsClaimed = table.Column<bool>(nullable: false),
LastModified = table.Column<DateTime>(nullable: false),
NumberOfUnits = table.Column<int>(nullable: false),
TransactionId = table.Column<int>(nullable: false),
TransactionId1 = table.Column<int>(nullable: true) // why is this here?
},
constraints: table =>
{
table.PrimaryKey("PK_Vouchers", x => x.Id);
table.ForeignKey(
name: "FK_Vouchers_Transactions_TransactionId1",
column: x => x.TransactionId1,
principalTable: "Transactions",
principalColumn: "Id",
onDelete: ReferentialAction.Restrict);
});
Run Code Online (Sandbox Code Playgroud)
TransactionId1 不在模型中:
public class Voucher : IAutoLastModified
{ …Run Code Online (Sandbox Code Playgroud) 我前几天在C#中编写了一些代码,这让我思考.如果char文字只能有1个char(或分隔符),那么为什么我们需要结束分隔符?
例如,目前我们需要写:
char character = 's';
Run Code Online (Sandbox Code Playgroud)
并且没有任何情况可以使用(显然):
char character = 'sa';
Run Code Online (Sandbox Code Playgroud)
那么为什么我们必须把结束'而不是暗示呢?例如:
char character = 's;
char anotherCharacter = '\';
Run Code Online (Sandbox Code Playgroud)
可读性只会受到影响,因为我们习惯了当前的标准(不一定是因为这种方式不太可读).
我最近看到一篇文章提到C/C++中的空指针实际上不是简单的零,而是由编译器解释为平台的任何分配地址为null.
这与我在Visual Studio中调试c ++时所看到的内容相关,其中指针的值为0xCACACACA(或类似的东西),当它是一个错误的指针时(但这可能只是为了我们的利益显示的值).
那么长话短说,平台的真空指针地址是什么(比如windows)?还是我完全误解了答案?
编辑:
另外,(仅作为扩展)这是做什么的?
int i = 0;
// pretend to do some stuff with i
char* = (char*)i;
Run Code Online (Sandbox Code Playgroud)
编译器会在运行时将指针设置为null还是将其设置为零?如果确实如此,后者就是UB?它会打破这个计划吗?
这是一个奇怪的问题,但我使用嵌套类在c ++中创建类似属性的功能.我还通过使嵌套类的赋值运算符受到保护以及嵌套类的主机类a使这些工作成为ReadOnly Friend.不幸的是,似乎任何继承类(with : public BaseClass)仍然无法访问嵌套类的赋值运算符.
我不知道它是否重要,但我确实把它放在Friend了课堂的公共部分.
有谁知道如何解决这个问题?(或者破解它)谢谢
编辑:添加了代码示例
#define ReadOnlyProperty(type,name,parent) \
protected: \
class name : public PropertyBase<type> \
{ \
parent* This; \
public: \
friend class parent; \
name(parent* instance) { This = instance; } \
protected: \
void operator=(type value) {Set(value);} \
void Set(type value); \
type Get() const; \
}; \
public: name name; \
friend class name; \
private:
Run Code Online (Sandbox Code Playgroud)
基类:
class Object
{
ReadOnlyProperty(char,Type,Object);
public:
Object() : Type(this) {}
}; …Run Code Online (Sandbox Code Playgroud) c# ×5
c++ ×5
c ×2
.net ×1
char ×1
inheritance ×1
literals ×1
maui ×1
maui-blazor ×1
maui-windows ×1
navigation ×1
nested-class ×1
null ×1
polymorphism ×1
templates ×1
typedef ×1
unit-testing ×1
unmanaged ×1
wpf ×1