ConsoleSelect
1.0.0
以下示例:
var consoleSelect = new ConsoleSelect ( ) ;
var options = new [ ]
{
new ConsoleSelect . Option < string > { Key = "option1" , Text = "Option 1" } ,
new ConsoleSelect . Option < string > { Key = "option2" , Text = "Option 2" } ,
new ConsoleSelect . Option < string > { Key = "option3" , Text = "Option 3" , Selected = true } ,
new ConsoleSelect . Option < string > { Key = "option4" , Text = "Option 4" } ,
new ConsoleSelect . Option < string > { Key = "option5" , Text = "Option 5" }
} ;
var selectedOption = consoleSelect . PropmtSelection ( "Select an option:" , options ) ;会渲染:
Select an option:
[ ] Option 1
[ ] Option 2
[X] Option 3
[ ] Option 4
[ ] Option 5
默认情况下, UpArrow和DownArrow用于上下移动选择。 Enter用于确认选择。
ConsoleSelect(ConsoleSelect.Settings settings)构造函数可用于自定义以下内容:
| 财产 | 默认 | 描述 |
|---|---|---|
| OptionRenderFormat | "[{Selected}] {Text}" | 每个选项的渲染格式( {Selected}和{Text}是必需的占位符) |
| OptionNotSelectedIndicator | " " | 字符串表示未选择选项 |
| OptionsElectectectialdicator | "X" | 字符串指示选择选项 |
| ISTITLEENABLED | true | 是否应绘制标题 |
| moveselectionupkey | ConsoleKey.UpArrow | 用于移动选择的钥匙 |
| MoveselectionDownkey | ConsoleKey.DownArrow | 用于向下移动选择的钥匙 |
| ConscentSelectionKey | ConsoleKey.Enter | 用于确认选择的钥匙 |
| Textwriter | Console.Out | 用来输出标题和选项的作者 |
| InputKeyReader | intercept => Console.ReadKey(intercept) | 从用户输入读取键的功能 |
| CursorvisibilitySetter | visible => Console.CursorVisible = visible | 设置控制台光标可见性的功能 |
| CursorPositionSetter | (left, top) => Console.SetCursorPosition(left, top) | 设置控制台光标位置的功能 |
| Cursorleftgetter | () => Console.CursorLeft | 获得控制台光标左位的功能 |
| Cursortopgetter | () => Console.CursorTop | 获得控制台光标顶部位置的功能 |