我正在尝试学习如何将TextField与MaskTextInputFormatter正确使用。我还使用控制器为其设置初始值。但是,当用户按下退格键时,所有文本都会被删除,而不是仅删除 1 个字符。
有人知道如何正确设置它吗?我还尝试通过控制器更改“选择”属性,但没有任何改变。
有状态:
// 这将初始文本设置到 TextField 中
class _ErrosState extends State<Erros>
{
var valorController = TextEditingController(
text: "(91) 12345-1234");
Run Code Online (Sandbox Code Playgroud)
// __________________________________________________
//无状态
class CadastroTelefonePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
home: Scaffold(
body:
TextField(
controller: _ErrosState().valorController,
inputFormatters: [MaskTextInputFormatter(
mask: '(##) #####-####',
filter: {"#": RegExp(r'[0-9 ]')})
],
onChanged: (text) {
_ErrosState.input = text;
},
obscureText: false,
decoration: InputDecoration(
border: OutlineInputBorder(),
labelText: '(XX) XXXXX-XXXX',
), …Run Code Online (Sandbox Code Playgroud) 我有Windows 8.1,MySql 5.6和Visual Studio Ultimate 2012.
我正在尝试设置DataSet,但是Cannot obtain provider factory for data provider named MySql.Data.MySqlClient当我尝试将表拖到DataSet时遇到错误.
a)服务器资源管理器可以访问数据库并向我显示所有表,"测试连接"按钮返回成功的消息.
B)我加入到bin文件夹的MySql引用(MySql.Data,MySql.Data.Entity,MySql.Web).
c)我编辑了Web.config文件删除MySql.Data.MySqlClient不变量并再次添加"正确"设置.我尝试设置<connectionStrings>,<DbProviderFactories>成员资格提供程序,配置文件提供程序和RoleManager提供程序;
d)我已经卸载并重新安装了MySql和Visual Studio.
似乎没有什么工作,同样的错误仍在发生.我已经尝试过这个和其他论坛的很多建议.