WPF ListView 插入Combox和TextBox取值和赋值

WPF ListView 插入Combox和TextBox取值和赋值,第1张

第一种方法

DataTable dt = new DataTable();

dtColumnsAdd( "name" );

dtColumnsAdd( "value" );

DataRow dr = dtNewRow();

dr[0] = "活动" ;

dr[1] = "1" ;

dtRowsAdd(dr); DataRow dr1 = dtNewRow();

dr1[0] = "生活" ;

dr1[1] = "2" ;

dtRowsAdd(dr1);

this comboBox1DataSource = dt;

this comboBox1DisplayMember = "name" ;

this comboBox1ValueMember = "value" ;

//调用方法:

//string _value = comboBox1SelectedValueToString();

第二种:

//首先添加一个ComboBoxItem类

public class ComboBoxItem

{

private string _text = null ;

private object _value = null ;

public string Text

{ get {

return this _text;

} set {

this _text = value;

} }

public object Value

{ get {

return this _value;

} set {

this _value = value;

} }

public override string ToString()

{

return this _text;

} }

// 赋值方法

ComboBoxItem newitem = new ComboBoxItem();

newitemText = "男" ;

newitemValue = "1" ;

ComboBoxItem newitem1 = new ComboBoxItem();

newitem1Text = "女" ;

newitem1Value = "0" ;

com_sexItemsAdd(newitem);

com_sexItemsAdd(newitem1);

// 调用方法:

ComboBoxItem sex_item = (ComboBoxItem)com_sexSelectedItem;

int com_sex_value = ConvertToInt32(sex_itemValue);

string _Name = sex_itemText;

第三种:

//首先添加一个SetCls类

public class SetCls

{

private string ID;

private string NAME;

public SetCls( string pid, string pName)

{

this ID =pid;

this NAME =pName;

}

public string pID

{

get { return ID;}

}

public string pName

{

get { return NAME;}

} }

// 赋值方法:(使用ArrayList 要先引用命名空间using SystemCollections;)

ArrayList lists = new ArrayList();

lists Add( new SetCls ( "1" , "活动" ));

lists Add( new SetCls ( "2" , "生活" ));

this COMBOXDisplayMember = "pID" ;

this COMBOXValueMember = "pName" ;

this COMBOXDataSource = lists;

// 调用方法:

string com_sex_value = COMBOXSelectedValueToString();

我用DataSet填充的数据库中的内容(我这个是直接赋值,并不像上面三个添加值给ComBox)

DataSet ds_zubie = new DataSet();

da = new SqlDataAdapter(sql_zubie, PublicDBDBzbw);

daFill(ds_zubie, "zubie" );

com_paidanDataSource = ds_zubieTables[ "zubie" ]DefaultView;//绑定数据源

com_paidanValueMember = "zubie_id" ;//赋值Value

com_paidanDisplayMember = "zubie_name" ;//赋值显示名称

//调用方法:

string com_zubie_id = com_paidanSelectedValueToString();

RichTextBoxtextlength 内容长度

RichTextBoxtextsubstring(5,RichTextBoxtextlength-1-5) //第一个参数是5或者4,第二个可能不需要减1你自己试试就OK

你好:

一、错误原因

TextBox绑定方式(Mode)默认为TwoWay。

如果没有为Binding指定Path,就会使用当前源的ObjectToString()。

在你的例子中,TextBox属性Text的值是通过Items中的每项的ToString()方法获得的;

由于Mode=TwoWay,目标Text的值要返回给源,但能返回给ObjectToString()吗?所以出错了。

参考:

二、修正方法

Mode=OneWay

 <TextBox Text="{Binding Mode=OneWay}"/>

指定Path

<TextBox Text="{Binding Path=}"/>

通过一层包装

以上就是关于WPF ListView 插入Combox和TextBox取值和赋值全部的内容,包括:WPF ListView 插入Combox和TextBox取值和赋值、wpf中的RichTextBox 怎么获取内容长度,怎么截掉内容中的前5个字符、C#/WPF高手进!ComboBox.ItemTemplate用TextBlock正常,用TextBox就报错!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9612662.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存