我是GTK的新手,我正在学习使用TreeStore。我正在使用C#。
我想计算TreeStore中的父项,这样当我追加项目时,我可以将标题与适当的数字连接起来。 (例如"产品0","产品1"等等
通过迭代整个树并计算项目,我找到了一种方法来做我想做的事情。像这样:
trs_inspectionStore.GetIterFirst (out iter); // Go to first item in store.
int n = 0;
while (trs_inspectionStore.IterIsValid (iter)) // Loop while the iter is valid
{
n++;
trs_inspectionStore.IterNext (ref iter); // Next item!
}
Console.WriteLine (n);
我想知道是否有更好的方法。我希望找到一些Count属性或类似的东西。有任何想法吗?或者我已经使用了最好的方法?
答案 0 :(得分:0)
我自己找到了这个问题的答案:
要计算TreeStore中顶级行的数量,请使用模型的NChildren()方法。这种方法通常用于计算一行中孩子的数量,然后将其传递给一个“孩子”。对象作为参数。但是,如果您在没有Iter(零参数)的情况下调用它,则返回顶级行数的计数:
int count = Model.IterNChildren();