2016-03-15 94 views
-1
public UcCard CardValue() 
    { 
     UcCard current = pack[index]; 
     UcCard.Type cardvalue = 0; 
     current.Value = cardvalue; 
    edit:return current.Value.ToString(cardvalue); 
     //////return UcCard.ToString(cardvalue); 
    } 

编辑:现在它说,它不能。“*** UcCard.Type”转换为字符串如何从对象中获取值并将其转换为字符串?

即时得到错误“没有超载的方法‘的ToString’需要1个参数” 想什么IM要做的是从UcCard获取一个值然后打印它,现在我知道UcCard是一个对象,但我不知道如何取值并将其传递给字符串

即时编码的新内容,所以要温和T_T i在发帖前试着寻找答案,但我只是找不到符合我需要的答案

als o,这是我尝试取值的地方:

public int Volume 
    { 
     get 
     { 
      switch (lblValue.Text) 
      { 
       case "2": return 2; 
       case "3": return 3; 
       case "4": return 4; 
       case "5": return 5; 
       case "6": return 6; 
       case "7": return 7; 
       case "8": return 8; 
       case "9": return 9; 
       case "10": 
       case "K": 
       case "Q": 
       case "J": return 10; 
       case "A": return 1; 
      } 

      return 0; 
     } 
    } 
+0

“现在我知道,UcCard是一个对象” - 这是奇怪的。从你的样品'UcCard'是类型。 –

+0

然后我错了,或困惑,我看到一个帖子somwhere暗示,这是一个对象。 – Coconut

+0

'UcCard'是一种类型。您需要在该类型的实例上调用'ToString()'。试试'cardvalue.ToString()'。 –

回答

0

C#中的每个类或结构都隐式地继承了Object类。
该类包含打印字符串时调用的ToString方法。
而你应该自定义它以供你使用AKA覆盖它,因为程序不会猜测它应该打印什么Attributes而不是以什么格式提及。


(例如从MSDN)

class Person 
{ 
    public string Name { get; set; } 
    public int Age { get; set; } 

    public override string ToString() 
    { 
     return "Person: " + Name + " " + Age; 
    } 
} 
+0

即时消息我不确定如何在我的情况下实现覆盖字符串,如果你可以详细说明它会非常有帮助 – Coconut

+0

好吧,清理你的线程。 分享'UcCard'文件,我可以帮助你然后:) –

相关问题