private void OnInputChange(ChangeEventArgs args) { var v = args?.Value.ToString(); Value = v; if (Options != null) // Options 参数不为空时,本地过滤选项 { _options.Clear(); _options = !string.IsNullOrWhiteSpace(v) ? Options.Where(option => FilterOption(v, option)).ToList() : Options.ToList(); // 默认选中第一个 if (_options.Count > 0) { ToggleState = true; } } else if (FormatList != null) // FormatList 参数不为空时,按照指定 Format 格式添加选项 { _options.Clear(); if (!string.IsNullOrWhiteSpace(v)) { FormatList.ForEach(f => _options.Add(string.Format(f, v))); } // 默认选中第一个 if (_options.Count > 0) { ToggleState = true; } } else // 一般模式,从远程获取数据添加选项 { // 此处暂无需处理 } OnChange?.Invoke(v); }