-1

我正在使用 Windows 窗体在 C# 中创建一个问答游戏,我最初的想法是将问题/答案放入 XML 文件中,如下所示:

<?xml version="1.0" ?>
<quiz>
</question>
<question>
     <answers>

</question>

// More questions here

</quiz>

我计划使用如下形式的类/对象:

class Question
{


var listOfQuestions = new List<Question>();
listOfQuestions.Add(question);

我想知道如何使用这些组合,以便我可以轻松添加新的问题/答案,然后表单将在标签中显示问题,答案将在四个单独的按钮上?也许有人可以帮助我举一个例子,说明我将在表单代码/XML文件中包含什么来实现这一点?

我也想尝试,也许有不同难度级别的不同问题,但我也不知道我会怎么做。

感谢您的时间。

4

2 回答 2

2

您的 XML 有点偏离,因为您不能在同一元素中包含自由文本和子节点。这会更正确一点:

<?xml version="1.0"?>
<quiz>
    <question id="1" difficulty="1">
        <text>What is the capital city of Australia?</text>
        <answers>
            <wrongAnswer>Sydney</wrongAnswer>
            <correctAnswer>Canberra</correctAnswer>
            <wrongAnswer>Melbourne</wrongAnswer>
            <wrongAnswer>Adelaide</wrongAnswer>
        </answers>
    </question>

    <!-- More questions here  -->

</quiz>

根据您的其他问题,我还添加了一些您可以使用的属性。

至于将这些加载到 Forms 项目中,您最好创建一个可以将每个问题绑定到的 UserControl,尽管使用 WPF 会容易得多。我没有任何 ATM 的示例,但如果需要,我可以想出一些简单的东西。

于 2013-02-23T16:23:02.300 回答
0

如果我理解正确,您可以简单地使用级别标志扩展您的 Question 类并将您的类序列化为XML。然后您可以在启动时加载 XML 文件并对其进行反序列化。

于 2013-02-23T16:19:28.720 回答