WPF listview 如何绑定 Oracle 数据库 以及不错的oralceHelper.cs 文件
来源:互联网 发布:nib文件怎么打开 mac 编辑:程序博客网 时间:2024/05/18 22:14
今天搞了搞 WPF 中 listview 绑定数据库的方法!网上找了不少资料看看了,半天找不到一个合适直接解决问题的!
不过从各个版本中找到了几种可能解决方法!
可以先看看这个人的方法吧:http://www.cnblogs.com/xiaokang088/archive/2010/12/30/1922181.html;
看不懂,实现不了?!
那就接着往下看吧。。。
看看这个人的能不能帮你解决问题:http://blog.csdn.net/xiaodenanhai/article/details/8706274
卧槽,怎么都不行?!!
接着看,Xaml前台文件:
<Window x:Class="WpfTest.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" Height="321" Width="417"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="395*" /> <ColumnDefinition Width="0*" /> </Grid.ColumnDefinitions> <ListView Height="262" Margin="0,0,0,8" VerticalAlignment="Bottom" ItemsSource="{Binding}" Name="listView2" HorizontalAlignment="Center"> <ListView.View> <GridView> <GridViewColumn Header="用户名" DisplayMemberBinding="{Binding Path=LOGINNAME}" Width="100" /> <GridViewColumn Header="登录名" DisplayMemberBinding="{Binding Path=USERNAME}" Width="100"/> <GridViewColumn Header="身份证" DisplayMemberBinding="{Binding Path=IDCARD}" Width="100"/> <GridViewColumn Header="权限" DisplayMemberBinding="{Binding Path=ROLEID}" Width="100"/> </GridView> </ListView.View> </ListView> </Grid></Window>
Xaml后台文件:
using System.Windows;using System.Data;using System.Data.OleDb;namespace WpfTest{ /// <summary> /// MainWindow.xaml 的交互逻辑 /// </summary> public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); getData(); } // SqlDataAdapter sda; void getData() { // OleDbDataReader dr; // OleDbDataAdapter odda; DataTable dt = new DataTable(); DataSet ds=new DataSet(); string sqlstr = "select LOGINNAME,USERNAME,IDCARD,ROLEID from t_user"; OleDbParameter[] param = new OleDbParameter[]{ }; dt = OracleHelper.ExecuteDataTable("Data Source=orcl;User Id=root;Password=root;Unicode=True", CommandType.Text, sqlstr, null); listView2.ItemsSource = dt.DefaultView; } }}
OracleHelper.cs
.netFrameWork4.0 下 添加 OracleClient.dll (微软已过期了)或者来个更这是的装一个odp.net
using System;using System.Configuration;using System.Data;using System.Collections;using System.Data.OleDb;using System.Data.SqlClient; using System.Data.OracleClient;namespace WpfTest{ public abstract class OracleHelper { public static readonly string TwHotelConnString = "Provider=msdaora;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))(CONNECT_DATA=(sid =orcl)));User Id=root;Password=root;Unicode=True"; private static Hashtable parmCache = Hashtable.Synchronized(new Hashtable()); public static int ExecuteNonQuery(string connectionString, CommandType cmdType, string cmdText, params OracleParameter[] commandParameters) { OracleCommand cmd = new OracleCommand(); using (OracleConnection conn = new OracleConnection(connectionString)) { PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters); int val = cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); return val; } } public static DataTable ExecuteDataTable(string connectionString, CommandType cmdType, string cmdText, params OracleParameter[] commandParameters) { OracleCommand cmd = new OracleCommand(); OracleConnection conn = new OracleConnection(connectionString); try { PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters); OracleDataAdapter da = new OracleDataAdapter(); DataTable dt = new DataTable(); da.SelectCommand = cmd; da.Fill(dt); return dt; } finally { conn.Close(); } } public static DataSet ExecuteDataSet(string connectionString, CommandType cmdType, string cmdText, params OracleParameter[] commandParameters) { OracleCommand cmd = new OracleCommand(); OracleConnection conn = new OracleConnection(connectionString); try { PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters); OracleDataAdapter da = new OracleDataAdapter(); DataSet ds = new DataSet(); da.SelectCommand = cmd; da.Fill(ds); return ds; } finally { conn.Close(); } } public static int ExecuteNonQuery(OracleConnection connection, CommandType cmdType, string cmdText, params OracleParameter[] commandParameters) { OracleCommand cmd = new OracleCommand(); PrepareCommand(cmd, connection, null, cmdType, cmdText, commandParameters); int val = cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); connection.Close(); return val; } public static int ExecuteNonQuery(OracleTransaction trans, CommandType cmdType, string cmdText, params OracleParameter[] commandParameters) { OracleCommand cmd = new OracleCommand(); PrepareCommand(cmd, trans.Connection, trans, cmdType, cmdText, commandParameters); int val = cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); trans.Connection.Close(); return val; } public static OracleDataReader ExecuteReader(string connectionString, CommandType cmdType, string cmdText, params OracleParameter[] commandParameters) { OracleCommand cmd = new OracleCommand(); OracleConnection conn = new OracleConnection(connectionString); try { PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters); OracleDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection); cmd.Parameters.Clear(); return rdr; } catch { conn.Close(); throw; } //finally //{ // conn.Close(); //} } public static object ExecuteScalar(string connectionString, CommandType cmdType, string cmdText, params OracleParameter[] commandParameters) { OracleCommand cmd = new OracleCommand(); using (OracleConnection connection = new OracleConnection(connectionString)) { PrepareCommand(cmd, connection, null, cmdType, cmdText, commandParameters); object val = cmd.ExecuteScalar(); cmd.Parameters.Clear(); return val; } } public static object ExecuteScalar(OracleConnection connection, CommandType cmdType, string cmdText, params OracleParameter[] commandParameters) { OracleCommand cmd = new OracleCommand(); PrepareCommand(cmd, connection, null, cmdType, cmdText, commandParameters); object val = cmd.ExecuteScalar(); cmd.Parameters.Clear(); connection.Close(); return val; } public static void CacheParameters(string cacheKey, params OracleParameter[] commandParameters) { parmCache[cacheKey] = commandParameters; } public static OracleParameter[] GetCachedParameters(string cacheKey) { OracleParameter[] cachedParms = (OracleParameter[])parmCache[cacheKey]; if (cachedParms == null) return null; OracleParameter[] clonedParms = new OracleParameter[cachedParms.Length]; for (int i = 0, j = cachedParms.Length; i < j; i++) clonedParms[i] = (OracleParameter)((ICloneable)cachedParms[i]).Clone(); return clonedParms; } private static void PrepareCommand(OracleCommand cmd, OracleConnection conn, OracleTransaction trans, CommandType cmdType, string cmdText, OracleParameter[] cmdParms) { if (conn.State != ConnectionState.Open) conn.Open(); cmd.CommandTimeout = 180; cmd.Connection = conn; cmd.CommandText = cmdText; if (trans != null) cmd.Transaction = trans; cmd.CommandType = cmdType; if (cmdParms != null) { foreach (OracleParameter parm in cmdParms) cmd.Parameters.Add(parm); } } }}
0 0
- WPF listview 如何绑定 Oracle 数据库 以及不错的oralceHelper.cs 文件
- 【WPF】动态绑定listview的列内容
- WPF中listview数据绑定
- WPF ListView绑定数据实例
- WPF - DataTable 绑定到Listview
- WPF DataGrid、ListView 简单绑定
- WPF DataGrid、ListView 简单绑定
- wpf:combobox绑定数据库
- wpf listview的数据绑定(dataset)与selectedItem的数据
- WPF中ListView小Demo的数据绑定应用.
- WPF中ListView小Demo的数据绑定应用
- WPF下ListView 绑定xml数据源的方案
- WPF ListView 的三种数据绑定方式
- C# WPF ListView 数据库
- C# WPF ListView 数据库
- listview绑定数据库的表VB.NET
- 一篇不错的Oracle数据库学习笔记
- 如何保存RichTextBox的文本到数据库?以及如何对RichTextBox的Document做绑定?
- 深入图解字符集与字符集编码(二)——字符集及其编号
- 【Java.JMS】JMS基础
- poj 2096
- 3dB带宽
- android开发中常用的Eclipse快捷键详细整理
- WPF listview 如何绑定 Oracle 数据库 以及不错的oralceHelper.cs 文件
- android实现开机自启动服务
- 深入图解字符集与字符集编码(一)——charset vs encoding
- 温州家具设计师吴作光:用设计撬动制造
- 无责任猜想#冰桶挑战#大佬们相爱相杀众生相
- android 软件开发错误-解决记录
- 移动端App测试实用指南
- Consistency model(The system supports a given model if operations on memory follow specific rules)
- 程序员常去的14个顶级开发社区