C# 如何在NetTelegramBot KeybrardMarkup中放置多行?
我正在用c#做一个电报机器人。 我想读一些名称(不超过20个,可能更少),并将它们作为键盘标记提供给用户。在一维数组中,它们都在一行中,无法读取。我想用5个名字组成4行,所以我尝试了4x5数组。但是我得到了这个错误 错误CS0029无法将类型“nettelegramobotapi.Types.KeyboardButton[,]”隐式转换为“nettelegramobotapi.Types.KeyboardButton[]”C# 如何在NetTelegramBot KeybrardMarkup中放置多行?,c#,telegram-bot,C#,Telegram Bot,我正在用c#做一个电报机器人。 我想读一些名称(不超过20个,可能更少),并将它们作为键盘标记提供给用户。在一维数组中,它们都在一行中,无法读取。我想用5个名字组成4行,所以我尝试了4x5数组。但是我得到了这个错误 错误CS0029无法将类型“nettelegramobotapi.Types.KeyboardButton[,]”隐式转换为“nettelegramobotapi.Types.KeyboardButton[]” if (text ==
if (text == "/lista")
{
// Read a text file line by line.
listapz = System.IO.File.ReadAllLines("listapz.txt");
string selezione = "Seleziona il paziente:";
int i = 0;
int x = 0;
int y = 0;
var arrays = new KeyboardButton[4,5];
for (i = 0; i < listapz.Length; i++)
{
y = i / 5;
x = i - (y * 5);
arrays[y,x] = new KeyboardButton("$" + (i + 1) + " " + listapz[i]);
selezione += "\n$" + (i + 1) + " " + listapz[i] + "";
}
var keyb = new ReplyKeyboardMarkup()
{
Keyboard = arrays,
OneTimeKeyboard = true,
ResizeKeyboard = true
};
var reqAction = new SendMessage(update.Message.Chat.Id, selezione) { ReplyMarkup = keyb };
bot.MakeRequestAsync(reqAction).Wait();
Console.WriteLine(reqAction);
continue;
}
if(text==“/lista”)
{
//逐行读取文本文件。
listapz=System.IO.File.ReadAllLines(“listapz.txt”);
字符串selezione=“Seleziona il paziente:”;
int i=0;
int x=0;
int y=0;
var数组=新键盘按钮[4,5];
对于(i=0;i
任何解决方案?您可以为每一行创建新的一维数组 然后
keyb.row(第一个数组)//您只需要在python中获取与keyb.row(*array)类似的值
keyb.row(第二个数组)//依此类推
并将所有键盘添加到一个reply\u markup=keyb
中,我用的是C语言,而不是python语言