小编Qua*_*nel的帖子

获取使用我的应用程序打开的文件的路径+文件名

我是c#的业余爱好者,我一直无法找到答案.也许我不知道使用正确的术语.

当一个视频文件被拖到我的exe应用程序上时,我希望应用程序知道它是用文件启动的,并且能够知道该文件的路径和文件名.这样,用户不必使用文件>打开菜单.

希望有道理.谢谢

c# launching file

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

访问对象中对象的属性

我有3个类MetaA,MetaB和MetaC.每个都有许多属性.

在某些情况下,只有一个类包含所有三个Meta类的属性(例如,MetaComposite)会很好.在复合类中,我尝试了每个MetaA,B和C的创建和实例,希望我可以像这样访问属性:

Meta Composite mc = new MetaComposite();
mc.MetaA.Property1 = "Hello";
Run Code Online (Sandbox Code Playgroud)

由于C#不允许多重继承,因此创建一个由其他类组合的类的最佳方法是什么?我可以在复合类中放置字段并编写getter和setter来传递属性值,但这将是很多重复的代码.

这里的正确方法是什么?

c# multiple-inheritance

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

在倒计时中简单的bool翻转

我是一名绝对的初学程序员,正在使用visual studio 2012学习C#.

我创建了一个涉及计数器的小型表单程序.我想要为每个刻度改变颜色的背景,但我无法理解为什么我的代码不起作用.颜色改变一次然后保持这种状态.我必须犯一个根本性的错误.

任何人都可以看到这个问题是什么?

    public Form1()
    {
        InitializeComponent();
        timer1.Start();
    }

    int timeLeft = 60;
    bool metronome = true;

    public void timer1_Tick(object sender, EventArgs e)
    {
        timer1.Interval = 1000;
        if (timeLeft > 0)
        {
            timeLeft = timeLeft - 1;
            timeLabel.Text = Convert.ToString(timeLeft);
            Metronome();
        }
        else
        {
            // Stop the timer
            timer1.Stop();                
        }
    }


    public void Metronome()
    {
        metronome = !metronome;
        if (metronome = true)
                {
                    this.BackColor = System.Drawing.Color.Crimson;
                }
        else
                {
                    this.BackColor = System.Drawing.Color.Black;
                }
    }
Run Code Online (Sandbox Code Playgroud)

c# counter boolean

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

检查字符串是否包含除下划线以外的非字母数字

我正在尝试编写 if 语句,该语句在字符串包含任何非字母数字字符(下划线除外)时运行。

这就是我所拥有的,我试图找到一种简单的方法来为下划线添加例外,但我遇到了困难。(其中键是一个字符串)。

// Check for non-alphanumerics except underscore
if (!(key.All(char.IsLetterOrDigit)))                                        
{
    validationResult = false;
}
Run Code Online (Sandbox Code Playgroud)

c# if-statement alphanumeric

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

C# 将 XML 文件解析为对象

使用C#,有没有一种方法可以轻松解析XML文件,以便将其用作对象?

XML 示例:

<Config>
    <Ui>
        <Colour>black</Colour>
        <Size>small</Size>
    </Ui>
    <Output>
        <Mode>smb</Mode>
        <Version>2</Version>
    </Output>
</Config>
Run Code Online (Sandbox Code Playgroud)

然后参考我的应用程序中的参数

Config.Output.Mode
Run Code Online (Sandbox Code Playgroud)

我尝试过这种方法 - How to Deserialize XML document

但当我尝试时

var cfg = new Config();
cfg.Load(@"config.xml");
Console.WriteLine(cfg.Output.Mode);
Run Code Online (Sandbox Code Playgroud)

Visual Studio 指示 .Output.Mode 无效。

Config.Load 所在位置

Config.Output.Mode
Run Code Online (Sandbox Code Playgroud)

c# xml

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

使用 C# 降低数字数组精度的有效方法

使用 C#,在不改变类型的情况下将浮点数数组的精度降低 n 位的有效方法是什么?

例子:

float[]{1.34, 2.22, 2.32, 7.71}
Run Code Online (Sandbox Code Playgroud)

变成

float[]{1.00, 2.00, 2.00, 8.00}
Run Code Online (Sandbox Code Playgroud)

或者

float[]{1.30, 2.20, 2.30, 7.70}
Run Code Online (Sandbox Code Playgroud)

c# arrays precision

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