首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >基于Int编号的C#显示组合框

基于Int编号的C#显示组合框
EN

Stack Overflow用户
提问于 2013-08-07 12:00:56
回答 1查看 157关注 0票数 0

首先是一些背景信息。我正在玩一个D&D的在线运动,并且正在玩一个德鲁伊。我已经为所有被召唤的动物建立了一个动物追踪器,但是现在我想通过建立一个角色追踪器,为我自己的角色邓肯,以及我的强力艾迪(可怕狼动物同伴),来加快速度。

我现在正在做的事情,就是跟踪我的咒语。在D&D法术和法术等级是根据等级的字符和奖金统计。

德鲁伊:http://www.dandwiki.com/wiki/SRD:Druid代表博格斯:Scores

向下滚动的能力修饰符,所以更多的智慧,更多的法术。

现在,我正在考虑为从level0到level9的法术制作选项卡控制的页面,然后显示ComboBoxes来选择您想要准备的咒语。

实际上,我计划隐藏绝大多数的组合框,并且只使用简单的If语句来解除它们的隐藏,所以如果智慧足够高,取消隐藏x个组合框boxes....but,这就意味着创建大量的if语句。

是否有一种方法可以说,如果智慧足够高,足够10个法术,显示10个组合框,如果智慧足够高,只有5个,只显示5个?

或者其他人对如何做到这一点有一个好的替代方案吗?我愿意听取你的建议。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-07 12:07:24

注意:,因为您没有指定语言(一个平台),所以我将使用C#和窗体。

当然,我不确定如何确定智慧水平,但假设它存储在一个名为_wisdomLevel的变量中

代码语言:javascript
运行
复制
private int _wisdomLevel;

现在您只需要一个Dictionary来处理这个问题:

代码语言:javascript
运行
复制
private Dictionary<int, int> _wisdomLevelSpells = new Dictionary<int, int>
    {
        { 1, 5 },
        { 2, 5 },
        { 3, 10 },
    }

现在,我输入的值是随机的,它们是这样的,你可以得到这个想法。现在,为了显示这些组合框,我可能会这样做:

代码语言:javascript
运行
复制
for (int i = 0; i < _wisdomLevelSpells[_wisdomLevel]; i++)
{
    this.Controls.Add(new ComboBox()
        {
            DataSource = ...,
            ValueMember = ...,
            DisplayMember = ...,
        }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18102846

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档