小编Sel*_*rio的帖子

MAUI .NET 设置窗口大小

如何在 MAUI 中设置窗口大小?

背景信息:我只关心此应用程序的 Windows - 我选择了 MAUI,因此我可以将 Blazor 用于桌面应用程序。由于某种原因,默认窗口尺寸很大(几乎占据了我所有的 1440p 屏幕空间)。我正在制作的应用程序只需要大约 600x600。尽管我很高兴让应用程序能够响应,但有一种方法可以固定窗口大小也会很有帮助。

maui maui-blazor maui-windows

30
推荐指数
4
解决办法
3万
查看次数

在WPF导航NavigationWindow中获取当前运行页面

我是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,然后我不想启动该计时器.

.net navigation wpf navigationwindow

6
推荐指数
1
解决办法
2万
查看次数

非托管C#与C++

我是一名想成为游戏开发者的人,我更喜欢使用C#.当我问到在C#中编写实时应用程序的缺点是什么时,我得到了一个重要的观点:垃圾收集及其对性能的不可预测的影响.

我的反问题是,非托管C#怎么样?它与C++的比较(性能方面)如何?它是开发软件的有效选择吗?

我没有听到很多关于非托管c#和所有"非托管c#与C++"的问题,我看到的问题没有得到答复或回答不准确.这些问题不是堆栈溢出.

编辑:

我相信无管理的C#是"不安全代码".

c# c++ unmanaged

6
推荐指数
1
解决办法
1607
查看次数

受保护的内部方法不允许内部类作为参数

此代码无法编译:

internal class Foo {}

public abstract class SomeBaseClass
{
    protected internal void ProcessFoo(Foo value)
    {
        // doing something...
    }
}
Run Code Online (Sandbox Code Playgroud)

编译失败说明:

可访问性不一致:参数类型Foo比方法更难访问SomeBaseClass.ProcessFoo

c#

6
推荐指数
1
解决办法
286
查看次数

虚拟typedef的替代品

我有一个接口IEnumerable用于List <>,Array <>和Dictionary <>的模板类.我希望使用typedef来获得他们的模板类型T.

我希望做到以下几点.

class IEnumerable
{
public:
    virtual typedef int TemplateType;
}
Run Code Online (Sandbox Code Playgroud)

然后覆盖继承的成员,但你不能创建一个虚拟的typedef.那么有没有其他方法可以获得未知模板类的类型(IEnumerable不是模板)?

c++ polymorphism templates typedef

5
推荐指数
1
解决办法
2294
查看次数

Assert.AreEquals调用object.Equals,无论IEquatable实现如何

今天,当编写和运行一些测试时,我发现即使我的类实现了一个IEquatable<MyClass>接口,也Assert.AreEqual(instanceOfMyClass, anotherInstance);导致错误。

事实证明,无论如何,都是Assert.AreEquals调用object.Equals(object obj)而不是正确的MyClass.Equals(MyClass obj)函数。

在有逻辑原因的假设下,这是什么?

c# unit-testing visual-studio

5
推荐指数
1
解决办法
968
查看次数

实体框架核心 - 外键 1(额外外键列)

我刚刚升级到 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# entity-framework ef-model-first

5
推荐指数
2
解决办法
3325
查看次数

为什么要对char进行分隔?基于C

我前几天在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# c++ char literals

4
推荐指数
1
解决办法
143
查看次数

C++什么是NULL指针值?

我最近看到一篇文章提到C/C++中的空指针实际上不是简单的零,而是由编译器解释为平台的任何分配地址为null.

/sf/answers/193212071/

这与我在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 c++ null

2
推荐指数
1
解决办法
929
查看次数

嵌套类和继承C++

这是一个奇怪的问题,但我使用嵌套类在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++ inheritance nested-class

1
推荐指数
1
解决办法
2754
查看次数