【.NET支持上下左右移动操作】

来源:互联网 发布:中国象棋分析软件 编辑:程序博客网 时间:2024/06/11 08:06
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
publicpartial class ShowSet : System.Web.UI.Page 
 
     Hashtable resources = EquStatusSearch.resources; 
     privatestring names = null
     IniOperation ini = newIniOperation("i18n"); 
   
     protectedvoid Page_Load(objectsender, EventArgs e) 
     
         if(!Page.IsPostBack) 
         
             names = QuarrysClass.All; 
             initi18n(); 
   
             string[] all =string.IsNullOrEmpty(names)?null: names.Split(',');//分割出所有列 
             hidfShows.Value =ini.IniValue("Set","Show"); 
             stringinclude = hidfShows.Value;//获取当前页展示列 
             if(string.IsNullOrEmpty(names)||all == null
             
                 //请先点加载配置信息 
                 return
             
             for(inti = 0; i < all.Length; i++)//遍历所有列 
             
                 if(include.IndexOf("@"+ all[i] + "@") == -1)//当前列中不包含分割出来的列时放在不显示框中 
                 
                      xListBox1.Items.Add(newListItem(resources[all[i]].ToString(),all[i])); 
                 
             
             string[] showNames = include.Split(','); 
             stringnewName=string.Empty; 
             foreach(stringname inshowNames) 
             
                 newName = name.Trim('@'); 
                 stringcolName = resources[newName] == null? string.Empty : resources[newName].ToString(); 
                 if(!string.IsNullOrEmpty(newName)) 
                 
                     xListBox2.Items.Add(newListItem(colName, newName)); 
                 
             
         
     
   
     //调用显示和展示字段名称 
     privatevoid initi18n() 
     
         this.Page.Title =string.IsNullOrEmpty(resources["ShowSetName"].ToString())?"字段显示设置": resources["ShowSetName"].ToString(); 
         xLabel1.Text =string.IsNullOrEmpty(resources["ShowSetNoShow"].ToString())?"不显示字段":resources["ShowSetNoShow"].ToString(); 
         xLabel2.Text = string.IsNullOrEmpty(resources["ShowSetShow"].ToString())?"显示字段":resources["ShowSetShow"].ToString(); 
     
   
     //将未显示字段右移到显示字段框,并清除掉不显示的选择到的项 
     protectedvoid xButton1_Click(objectsender, EventArgs e) 
     
         if(xListBox1.SelectedItem == null
         
             return
         
         xListBox2.Items.Add(xListBox1.SelectedItem); 
         xListBox1.Items.Remove(xListBox1.SelectedItem); 
     
   
     //将显示字段左移到未显示字段框,并清除掉显示的选择到的项 
     protectedvoid xButton2_Click(objectsender, EventArgs e) 
     
         if(xListBox2.SelectedItem == null
         
             return
         
         xListBox1.Items.Add(xListBox2.SelectedItem); 
         xListBox2.Items.Remove(xListBox2.SelectedItem); 
     
   
     //将左边所有不显示项加到右边的显示项中 
     protectedvoid xButton3_Click(objectsender, EventArgs e) 
     
         foreach(ListItem item inxListBox1.Items) 
         
             xListBox2.Items.Add(item); 
         
         xListBox1.Items.Clear(); 
     
   
     //将右边所有不显示项加到左边的显示项中 
     protectedvoid xButton4_Click(objectsender, EventArgs e) 
     
         foreach(ListItem item inxListBox2.Items) 
         
             xListBox1.Items.Add(item); 
         
         xListBox2.Items.Clear(); 
     
   
        
     //点击设置按钮事件, 
     protectedvoid btnSet_Click(objectsender, EventArgs e) 
     
         try 
         
             stringstr = ""
             for(inti = 0; i < xListBox2.Items.Count; i++)//循环添加显示项组成字符串 
             
                 str += "@"+ xListBox2.Items[i].Value + "@,"
             
             if("".Equals(str))//如果显示项为空直接清除显示页面的所有字段 
             
                 QuarrysClass.Shows = ""
             
             else 
             
                 //重新复制显示字段到显示页面 
                 QuarrysClass.Shows = str.Substring(0, str.Length - 1); 
             
             //调用主页面将显示字段写入到i18n文件中 
             ini.IniWriteValue("Set","Show", QuarrysClass.Shows); 
             Page.ClientScript.RegisterStartupScript(this.GetType(),"warn","alert('设置成功!');window.opener.searchData();window.close();",true); 
   
         
         catch(Exception ex) 
         
             stringstrScript = string.Format("alert('设置失败!{0}');", ex.Message); 
             Page.ClientScript.RegisterStartupScript(this.GetType(),"warn", strScript, true); 
         
     
   
     //上移 
     protectedvoid btnUp_Click(objectsender, EventArgs e) 
     
         UpMove(xListBox2); 
     
   
     //下移 
     protectedvoid btnDown_Click(objectsender, EventArgs e) 
     
         DownMove(xListBox2); 
     
   
     voidUpMove(ListBox ListBox2) 
     
         //若不是第一行则上移 
         if(ListBox2.SelectedIndex > 0) 
         
             stringname = ListBox2.SelectedItem.Text; 
             stringID = ListBox2.SelectedItem.Value; 
             intindex = ListBox2.SelectedIndex; 
             ListBox2.SelectedItem.Text = ListBox2.Items[index - 1].Text; 
             ListBox2.SelectedItem.Value = ListBox2.Items[index - 1].Value; 
             ListBox2.Items[index - 1].Text = name; 
             ListBox2.Items[index - 1].Value = ID; 
             ListBox2.SelectedIndex--; 
         
     
   
     voidDownMove(ListBox lbox) 
     
         if(lbox.SelectedIndex < lbox.Items.Count - 1) 
         
             stringname = lbox.SelectedItem.Text; 
             stringID = lbox.SelectedItem.Value; 
             intindex = lbox.SelectedIndex; 
             lbox.SelectedItem.Text = lbox.Items[index + 1].Text; 
             lbox.SelectedItem.Value = lbox.Items[index + 1].Value; 
             lbox.Items[index + 1].Text = name; 
             lbox.Items[index + 1].Value = ID; 
             lbox.SelectedIndex++; 
         
     
   
     voidTopMove(ListBox lbox) 
     
         intindex = 0; 
         ListItem item = lbox.SelectedItem; 
         lbox.Items.Remove(item); 
         lbox.Items.Insert(index, item); 
     
   
     voidBottomMove(ListBox lbox) 
     
         intindex = lbox.Items.Count - 1; 
         ListItem item = lbox.SelectedItem; 
         lbox.Items.Remove(item); 
         lbox.Items.Insert(index, item); 
     
   
     protectedvoid btnTop_Click(objectsender, EventArgs e) 
     
         TopMove(xListBox2); 
     
   
     protectedvoid btnBottom_Click(objectsender, EventArgs e) 
     
         BottomMove(xListBox2); 
     
   
 

 

原创粉丝点击