自定义控件开发示例二
本实例开发的是一个由2个ListBox和8个ImageButton组成的列表组件
通过中间ImageButton可以控件列表项在两个列表中的位置
到全右移 个右移 个左移 全左移
通过右边ImageButton可以控件列表项在列表中的位置
到第一位 上一位 下一位 到最后位
示例图如下
因为时间关系 现只将示例源代码写出
示例代码
1
using System;
2
using System.Web.UI;
3
using System.Web.UI.WebControls;
4
using System.ComponentModel;
5
using System.Text;
6
7
namespace JX_CC_LC
8
{
9
/// <summary>
10
/// LC_T02 的摘要描述。
11
/// 清单类型控件项类型2
12
/// 完成日期:2005-12-22
13
/// 编码人员:Free
14
/// </summary>
15
// [DefaultProperty("Text"),
16
// ToolboxData("<{0}:LC_T02 runat=server></{0}:LC_T02>")]
17
public class LC_T02 : WebControl, System.Web.UI.INamingContainer
18
{
19
//声明所要用到的 ListBox ,ImageButton
20
private System.Web.UI.WebControls.ListBox ListBleft_LcT02;
21
private System.Web.UI.WebControls.ListBox ListBright_LcT02;
22
23
private System.Web.UI.WebControls.ImageButton ibt_AllToR;
24
private System.Web.UI.WebControls.ImageButton ibt_OneToR;
25
private System.Web.UI.WebControls.ImageButton ibt_OneToL;
26
private System.Web.UI.WebControls.ImageButton ibt_AllToL;
27
28
private System.Web.UI.WebControls.ImageButton ibt_First;
29
private System.Web.UI.WebControls.ImageButton ibt_Pre;
30
private System.Web.UI.WebControls.ImageButton ibt_Next;
31
private System.Web.UI.WebControls.ImageButton ibt_Last;
32
33
private int wid = 150, hei = 200;
34
35
protected override void CreateChildControls()
36
{
37
this.Controls.Clear();
38
//this.ClearChildViewState();
39
//整体的大TABLE
40
this.Controls.Add(new LiteralControl("<table><tr><td><table><tr><td rowspan=5>"));
41
//左半部分
42
this.ListBleft_LcT02 = new ListBox();
43
this.ListBleft_LcT02.Width = wid;
44
this.ListBleft_LcT02.Height = hei;
45
this.ListBleft_LcT02.ID = this.ID + "_leftListB";
46
//this.ListBleft_LcT02.AutoPostBack=true;
47
this.ListBleft_LcT02.MergeStyle(this.ControlStyle);
48
this.Controls.Add(this.ListBleft_LcT02);
49
50
this.Controls.Add(new LiteralControl("</td></tr><tr><td>"));
51
this.ibt_AllToR = new ImageButton();
52
this.ibt_AllToR.ImageUrl = "img/alltoright.JPG";
53
this.ibt_AllToR.Attributes.Add("onclick", this.ID + "_allToR_click();return false;");
54
this.Controls.Add(this.ibt_AllToR);
55
this.Controls.Add(new LiteralControl("</td></tr><tr><td>"));
56
this.ibt_OneToR = new ImageButton();
57
this.ibt_OneToR.ImageUrl = "img/onetoright.JPG";
58
this.ibt_OneToR.Attributes.Add("onclick", this.ID + "_oneToR_click();return false;");
59
this.Controls.Add(this.ibt_OneToR);
60
this.Controls.Add(new LiteralControl("</td></tr><tr><td>"));
61
this.ibt_OneToL = new ImageButton();
62
this.ibt_OneToL.ImageUrl = "img/onetoleft.JPG";
63
this.ibt_OneToL.Attributes.Add("onclick", this.ID + "_oneToL_click();return false;");
64
this.Controls.Add(this.ibt_OneToL);
65
this.Controls.Add(new LiteralControl("</td></tr><tr><td>"));
66
this.ibt_AllToL = new ImageButton();
67
this.ibt_AllToL.ImageUrl = "img/alltoleft.JPG";
68
this.ibt_AllToL.Attributes.Add("onclick", this.ID + "_allToL_click();return false;");
69
this.Controls.Add(this.ibt_AllToL);
70
this.Controls.Add(new LiteralControl("</td></tr></table></td><td><table><tr><td rowspan=5>"));
71
//右半部分
72
this.ListBright_LcT02 = new ListBox();
73
this.ListBright_LcT02.Width = wid;
74
this.ListBright_LcT02.Height = hei;
75
this.ListBright_LcT02.ID = this.ID + "_rightListB";
76
//this.ListBright_LcT02.AutoPostBack=true;
77
this.ListBright_LcT02.MergeStyle(this.ControlStyle);
78
this.Controls.Add(this.ListBright_LcT02);
79
80
this.Controls.Add(new LiteralControl("</td></tr><tr><td>"));
81
this.ibt_First = new ImageButton();
82
this.ibt_First.ImageUrl = "img/first.JPG";
83
this.ibt_First.Attributes.Add("onclick", this.ID + "_first_click();return false;");
84
this.Controls.Add(this.ibt_First);
85
this.Controls.Add(new LiteralControl("</td></tr><tr><td>"));
86
this.ibt_Pre = new ImageButton();
87
this.ibt_Pre.ImageUrl = "img/pre.JPG";
88
this.ibt_Pre.Attributes.Add("onclick", this.ID + "_pre_click();return false;");
89
this.Controls.Add(this.ibt_Pre);
90
this.Controls.Add(new LiteralControl("</td></tr><tr><td>"));
91
this.ibt_Next = new ImageButton();
92
this.ibt_Next.ImageUrl = "img/next.JPG";
93
this.ibt_Next.Attributes.Add("onclick", this.ID + "_next_click();return false;");
94
this.Controls.Add(this.ibt_Next);
95
this.Controls.Add(new LiteralControl("</td></tr><tr><td>"));
96
this.ibt_Last = new ImageButton();
97
this.ibt_Last.ImageUrl = "img/last.JPG";
98
this.ibt_Last.Attributes.Add("onclick", this.ID + "_last_click();return false;");
99
this.Controls.Add(this.ibt_Last);
100
this.Controls.Add(new LiteralControl("</td></tr></table></td>"));
101
this.Controls.Add(new LiteralControl("</tr></table>"));
102
103
base.CreateChildControls();
104
105
//JS 部分
106
//all to right
107
108
System.Text.StringBuilder strbuild = new StringBuilder();
109
strbuild.Append("<script language='javascript'>");
110
111
strbuild.Append(" function " + this.ID + "_allToR_click(){");
112
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_leftListB.options.length;");
113
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_leftListB.options.length;");
114
strbuild.Append(" var j=document.all." + this.ID + "_" + this.ID + "_rightListB.options.length;");
115
strbuild.Append(" if(i>0){");
116
strbuild.Append(" var tempvalue=document.all." + this.ID + "_" + this.ID + "_leftListB.options[0].value;");
117
strbuild.Append(" var temptext=document.all." + this.ID + "_" + this.ID + "_leftListB.options[0].text;");
118
strbuild.Append(" var temp=new Array([tempvalue,temptext]);");
119
strbuild.Append(" for(ii=1;ii<i;ii++){");
120
strbuild.Append(" var iv=document.all." + this.ID + "_" + this.ID + "_leftListB.options[ii].value;");
121
strbuild.Append(" var it=document.all." + this.ID + "_" + this.ID + "_leftListB.options[ii].text;");
122
strbuild.Append(" temp.push([iv,it]);");
123
strbuild.Append(" }");
124
strbuild.Append(" for(jj=0;jj<j;jj++){");
125
strbuild.Append(" var jv=document.all." + this.ID + "_" + this.ID + "_rightListB.options[jj].value;");
126
strbuild.Append(" var jt=document.all." + this.ID + "_" + this.ID + "_rightListB.options[jj].text;");
127
strbuild.Append(" temp.push([jv,jt]);");
128
strbuild.Append(" }");
129
strbuild.Append(" temp.sort();");
130
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options.length=0;");
131
strbuild.Append(" for(ss=0;ss<i+j;ss++){");
132
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[ss]=new Option(temp[ss][1],temp[ss][0]);");
133
strbuild.Append(" }");
134
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_leftListB.options.length=0;");
135
strbuild.Append("} }</script>");
136
137
//one to right
138
139
strbuild.Append("<script language='javascript'>");
140
strbuild.Append(" function " + this.ID + "_oneToR_click(){");
141
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_leftListB.selectedIndex;");
142
strbuild.Append(" var j=document.all." + this.ID + "_" + this.ID + "_rightListB.options.length;");
143
strbuild.Append(" if(i>=0){");
144
strbuild.Append(" var tempvalue=document.all." + this.ID + "_" + this.ID + "_leftListB.options[i].value;");
145
strbuild.Append(" var temptext=document.all." + this.ID + "_" + this.ID + "_leftListB.options[i].text;");
146
strbuild.Append(" var temp=new Array([tempvalue,temptext]);");
147
strbuild.Append(" for(jj=0;jj<j;jj++){");
148
strbuild.Append(" var jv=document.all." + this.ID + "_" + this.ID + "_rightListB.options[jj].value;");
149
strbuild.Append(" var jt=document.all." + this.ID + "_" + this.ID + "_rightListB.options[jj].text;");
150
strbuild.Append(" temp.push([jv,jt]);");
151
strbuild.Append(" }");
152
strbuild.Append(" temp.sort();");
153
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options.length=0;");
154
strbuild.Append(" for(ss=0;ss<j+1;ss++){");
155
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[ss]=new Option(temp[ss][1],temp[ss][0]);");
156
strbuild.Append(" }");
157
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_leftListB.remove(i);");
158
strbuild.Append("} }</script>");
159
160
//one to left
161
162
strbuild.Append("<script language='javascript'>");
163
strbuild.Append(" function " + this.ID + "_oneToL_click(){");
164
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex;");
165
strbuild.Append(" var j=document.all." + this.ID + "_" + this.ID + "_leftListB.options.length;");
166
strbuild.Append(" if(i>=0){");
167
strbuild.Append(" var tempvalue=document.all." + this.ID + "_" + this.ID + "_rightListB.options[i].value;");
168
strbuild.Append(" var temptext=document.all." + this.ID + "_" + this.ID + "_rightListB.options[i].text;");
169
strbuild.Append(" var temp=new Array([tempvalue,temptext]);");
170
strbuild.Append(" for(jj=0;jj<j;jj++){");
171
strbuild.Append(" var jv=document.all." + this.ID + "_" + this.ID + "_leftListB.options[jj].value;");
172
strbuild.Append(" var jt=document.all." + this.ID + "_" + this.ID + "_leftListB.options[jj].text;");
173
strbuild.Append(" temp.push([jv,jt]);");
174
strbuild.Append(" }");
175
strbuild.Append(" temp.sort();");
176
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_leftListB.options.length=0;");
177
strbuild.Append(" for(ss=0;ss<j+1;ss++){");
178
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_leftListB.options[ss]=new Option(temp[ss][1],temp[ss][0]);");
179
strbuild.Append(" }");
180
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.remove(i);");
181
strbuild.Append("} }</script>");
182
183
//all to left
184
185
strbuild.Append("<script language='javascript'>");
186
strbuild.Append(" function " + this.ID + "_allToL_click(){");
187
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_leftListB.options.length;");
188
strbuild.Append(" var j=document.all." + this.ID + "_" + this.ID + "_rightListB.options.length;");
189
strbuild.Append(" if(j>0){");
190
strbuild.Append(" var tempvalue=document.all." + this.ID + "_" + this.ID + "_rightListB.options[0].value;");
191
strbuild.Append(" var temptext=document.all." + this.ID + "_" + this.ID + "_rightListB.options[0].text;");
192
strbuild.Append(" var temp=new Array([tempvalue,temptext]);");
193
strbuild.Append(" for(jj=1;jj<j;jj++){");
194
strbuild.Append(" var jv=document.all." + this.ID + "_" + this.ID + "_rightListB.options[jj].value;");
195
strbuild.Append(" var jt=document.all." + this.ID + "_" + this.ID + "_rightListB.options[jj].text;");
196
strbuild.Append(" temp.push([jv,jt]);");
197
strbuild.Append(" }");
198
strbuild.Append(" for(ii=0;ii<i;ii++){");
199
strbuild.Append(" var iv=document.all." + this.ID + "_" + this.ID + "_leftListB.options[ii].value;");
200
strbuild.Append(" var it=document.all." + this.ID + "_" + this.ID + "_leftListB.options[ii].text;");
201
strbuild.Append(" temp.push([iv,it]);");
202
strbuild.Append(" }");
203
strbuild.Append(" temp.sort();");
204
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_leftListB.options.length=0;");
205
strbuild.Append(" for(ss=0;ss<i+j;ss++){");
206
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_leftListB.options[ss]=new Option(temp[ss][1],temp[ss][0]);");
207
strbuild.Append(" }");
208
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options.length=0;");
209
strbuild.Append("} }</script>");
210
211
//first
212
213
strbuild.Append("<script language='javascript'>");
214
strbuild.Append(" function " + this.ID + "_first_click(){");
215
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_rightListB.options.length;");
216
strbuild.Append(" var j=document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex;");
217
strbuild.Append(" if(i>1&&j>0){");
218
strbuild.Append(" var tempValue=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].value;");
219
strbuild.Append(" var tempText=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].text;");
220
strbuild.Append(" for(var h=j;h>0;h--){");
221
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[h].value=document.all." + this.ID + "_" + this.ID + "_rightListB.options[h-1].value;");
222
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[h].text=document.all." + this.ID + "_" + this.ID + "_rightListB.options[h-1].text;");
223
strbuild.Append(" }");
224
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[0].value=tempValue;");
225
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[0].text=tempText;");
226
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex=0;");
227
strbuild.Append("} }</script>");
228
229
//pre
230
strbuild.Append("<script language='javascript'>");
231
strbuild.Append(" function " + this.ID + "_pre_click(){");
232
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_rightListB.options.length;");
233
strbuild.Append(" var j=document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex;");
234
strbuild.Append(" if(i>1&&j>0){");
235
strbuild.Append(" var tempValue=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].value;");
236
strbuild.Append(" var tempText=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].text;");
237
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].value=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j-1].value;");
238
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].text=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j-1].text;");
239
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[j-1].value=tempValue;");
240
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[j-1].text=tempText;");
241
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex=j-1;");
242
strbuild.Append("} }</script>");
243
244
//next
245
246
strbuild.Append("<script language='javascript'>");
247
strbuild.Append(" function " + this.ID + "_next_click(){");
248
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_rightListB.options.length;");
249
strbuild.Append(" var j=document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex;");
250
strbuild.Append(" if(i>1&&j<i-1){");
251
strbuild.Append(" var tempValue=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].value;");
252
strbuild.Append(" var tempText=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].text;");
253
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].value=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j+1].value;");
254
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].text=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j+1].text;");
255
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[j+1].value=tempValue;");
256
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[j+1].text=tempText;");
257
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex=j+1;");
258
strbuild.Append("} }</script>");
259
260
//last
261
262
strbuild.Append("<script language='javascript'>");
263
strbuild.Append(" function " + this.ID + "_last_click(){");
264
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_rightListB.options.length;");
265
strbuild.Append(" var j=document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex;");
266
strbuild.Append(" if(i>1&&j<i-1){");
267
strbuild.Append(" var tempValue=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].value;");
268
strbuild.Append(" var tempText=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].text;");
269
strbuild.Append(" for(var h=j;h<i-1;h++){");
270
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[h].value=document.all." + this.ID + "_" + this.ID + "_rightListB.options[h+1].value;");
271
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[h].text=document.all." + this.ID + "_" + this.ID + "_rightListB.options[h+1].text;");
272
strbuild.Append("}");
273
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[i-1].value=tempValue;");
274
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[i-1].text=tempText;");
275
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex=i-1;");
276
strbuild.Append("} }</script>");
277
this.Controls.Add(new LiteralControl(strbuild.ToString()));
278
}
279
280
protected override void Render(HtmlTextWriter writer)
281
{
282
this.EnsureChildControls();
283
base.Render(writer);
284
}
285
286
287
//控制图像显示
288
[Bindable(false),
289
Category("imagebuttonsrc"),
290
DefaultValue("")]
291
//全右移
292
public string alltoright_src
293
{
294
get
295
{
296
this.EnsureChildControls();
297
return ((ImageButton)Controls[3]).ImageUrl;
298
299
}
300
set
301
{
302
this.EnsureChildControls();
303
((ImageButton)Controls[3]).ImageUrl = value;
304
}
305
}
306
//个右移
307
public string onetoright_src
308
{
309
get
310
{
311
this.EnsureChildControls();
312
return ((ImageButton)Controls[5]).ImageUrl;
313
}
314
set
315
{
316
this.EnsureChildControls();
317
((ImageButton)Controls[5]).ImageUrl = value;
318
}
319
}
320
//个左移
321
public string onetoleft_src
322
{
323
get
324
{
325
this.EnsureChildControls();
326
return ((ImageButton)Controls[7]).ImageUrl;
327
}
328
set
329
{
330
this.EnsureChildControls();
331
((ImageButton)Controls[7]).ImageUrl = value;
332
}
333
}
334
//全左移
335
public string alltoleft_src
336
{
337
get
338
{
339
this.EnsureChildControls();
340
return ((ImageButton)Controls[9]).ImageUrl;
341
}
342
set
343
{
344
this.EnsureChildControls();
345
((ImageButton)Controls[9]).ImageUrl = value;
346
}
347
}
348
//最先
349
public string first_src
350
{
351
get
352
{
353
this.EnsureChildControls();
354
return ((ImageButton)Controls[13]).ImageUrl;
355
}
356
set
357
{
358
this.EnsureChildControls();
359
((ImageButton)Controls[13]).ImageUrl = value;
360
}
361
}
362
//前一
363
public string pre_src
364
{
365
get
366
{
367
this.EnsureChildControls();
368
return ((ImageButton)Controls[15]).ImageUrl;
369
}
370
set
371
{
372
this.EnsureChildControls();
373
((ImageButton)Controls[15]).ImageUrl = value;
374
}
375
}
376
//后一
377
public string next_src
378
{
379
get
380
{
381
this.EnsureChildControls();
382
return ((ImageButton)Controls[17]).ImageUrl;
383
}
384
set
385
{
386
this.EnsureChildControls();
387
((ImageButton)Controls[17]).ImageUrl = value;
388
}
389
}
390
//最后
391
public string last_src
392
{
393
get
394
{
395
this.EnsureChildControls();
396
return ((ImageButton)Controls[19]).ImageUrl;
397
}
398
set
399
{
400
this.EnsureChildControls();
401
((ImageButton)Controls[19]).ImageUrl = value;
402
}
403
}
404
405
//公开左右LISTBOX的相关属性和方法
406
//iDataSource
407
public object iDataSourceL
408
{
409
get
410
{
411
this.EnsureChildControls();
412
return ((ListBox)Controls[1]).DataSource;
413
}
414
set
415
{
416
this.EnsureChildControls();
417
((ListBox)Controls[1]).DataSource = value;
418
}
419
}
420
public object iDataSourceR
421
{
422
get
423
{
424
this.EnsureChildControls();
425
return ((ListBox)Controls[11]).DataSource;
426
}
427
set
428
{
429
this.EnsureChildControls();
430
((ListBox)Controls[11]).DataSource = value;
431
}
432
}
433
//
434
public string iDataTextFieldL
435
{
436
get
437
{
438
this.EnsureChildControls();
439
return ((ListBox)Controls[1]).DataTextField;
440
}
441
set
442
{
443
this.EnsureChildControls();
444
((ListBox)Controls[1]).DataTextField = value;
445
}
446
447
}
448
public string iDataValueFieldL
449
{
450
get
451
{
452
this.EnsureChildControls();
453
return ((ListBox)Controls[1]).DataValueField;
454
}
455
set
456
{
457
this.EnsureChildControls();
458
((ListBox)Controls[1]).DataValueField = value;
459
}
460
461
}
462
//
463
public string iDataTextFieldR
464
{
465
get
466
{
467
this.EnsureChildControls();
468
return ((ListBox)Controls[11]).DataTextField;
469
}
470
set
471
{
472
this.EnsureChildControls();
473
((ListBox)Controls[11]).DataTextField = value;
474
}
475
476
}
477
public string iDataValueFieldR
478
{
479
get
480
{
481
this.EnsureChildControls();
482
return ((ListBox)Controls[11]).DataValueField;
483
}
484
set
485
{
486
this.EnsureChildControls();
487
((ListBox)Controls[11]).DataValueField = value;
488
}
489
490
}
491
//iDataBind
492
public void iDataBindL()
493
{
494
this.EnsureChildControls();
495
((ListBox)Controls[1]).DataBind();
496
}
497
public void iDataBindR()
498
{
499
this.EnsureChildControls();
500
((ListBox)Controls[11]).DataBind();
501
}
502
//得到目前的索引 iSelectIndex
503
public int iSelectIndexL()
504
{
505
this.EnsureChildControls();
506
int i = ((ListBox)Controls[1]).SelectedIndex;
507
return i;
508
}
509
public int iSelectIndexR()
510
{
511
this.EnsureChildControls();
512
int i = ((ListBox)Controls[11]).SelectedIndex;
513
return i;
514
}
515
//得到ITEM的个数 iCountItem
516
public int iCountItemL()
517
{
518
this.EnsureChildControls();
519
int i = ((ListBox)Controls[1]).Items.Count;
520
return i;
521
}
522
public int iCountItemR()
523
{
524
this.EnsureChildControls();
525
int i = ((ListBox)Controls[11]).Items.Count;
526
return i;
527
}
528
//添加一个ITEM 到LISTBOX
529
public void iAddItemL(string addText, string addValue)
530
{
531
this.EnsureChildControls();
532
ListItem temp = new ListItem();
533
temp.Text = addText.Trim().ToString();
534
temp.Value = addValue.Trim().ToString();
535
((ListBox)Controls[1]).Items.Add(temp);
536
}
537
public void iAddItemL(string addText)
538
{
539
this.EnsureChildControls();
540
ListItem temp = new ListItem();
541
temp.Text = addText.Trim().ToString();
542
((ListBox)Controls[1]).Items.Add(temp);
543
}
544
public void iAddItemR(string addText, string addValue)
545
{
546
this.EnsureChildControls();
547
ListItem temp = new ListItem();
548
temp.Text = addText.Trim().ToString();
549
temp.Value = addValue.Trim().ToString();
550
((ListBox)Controls[11]).Items.Add(temp);
551
}
552
public void iAddItemR(string addText)
553
{
554
this.EnsureChildControls();
555
ListItem temp = new ListItem();
556
temp.Text = addText.Trim().ToString();
557
((ListBox)Controls[11]).Items.Add(temp);
558
}
559
//返回当前所选的Item项
560
public ListItem iSelectItemL()
561
{
562
this.EnsureChildControls();
563
int index = ((ListBox)Controls[1]).SelectedIndex;
564
int i = ((ListBox)Controls[1]).Items.Count;
565
if (index >= 0 && index < i)
566
{
567
return ((ListBox)Controls[1]).Items[index];
568
}
569
else
570
{
571
return null;
572
}
573
}
574
public ListItem iSelectItemR()
575
{
576
this.EnsureChildControls();
577
int index = ((ListBox)Controls[11]).SelectedIndex;
578
int i = ((ListBox)Controls[11]).Items.Count;
579
if (index >= 0 && index < i)
580
{
581
return ((ListBox)Controls[11]).Items[index];
582
}
583
else
584
{
585
return null;
586
}
587
}
588
//选择LISTBOX中第index项
589
public ListItem iSelectItemL(int index)
590
{
591
this.EnsureChildControls();
592
int i = ((ListBox)Controls[1]).Items.Count;
593
if (index >= 0 && index < i)
594
{
595
return ((ListBox)Controls[1]).Items[index];
596
}
597
else
598
{
599
return null;
600
}
601
}
602
public ListItem iSelectItemR(int index)
603
{
604
this.EnsureChildControls();
605
int i = ((ListBox)Controls[11]).Items.Count;
606
if (index >= 0 && index < i)
607
{
608
return ((ListBox)Controls[11]).Items[index];
609
}
610
else
611
{
612
return null;
613
}
614
}
615
//清空LISTBOX
616
public void iClearItemL()
617
{
618
this.EnsureChildControls();
619
((ListBox)Controls[1]).Items.Clear();
620
}
621
public void iClearItemR()
622
{
623
this.EnsureChildControls();
624
((ListBox)Controls[11]).Items.Clear();
625
}
626
//删除目前的所选值
627
public void iRemoveItemL()
628
{
629
this.EnsureChildControls();
630
int i = ((ListBox)Controls[1]).SelectedIndex;
631
if (i >= 0)
632
{
633
((ListBox)Controls[1]).Items.Remove(((ListBox)Controls[1]).Items[i]);
634
}
635
}
636
public void iRemoveAtItemL(int index)
637
{
638
this.EnsureChildControls();
639
int i = ((ListBox)Controls[1]).Items.Count;
640
if (index > 0 && index < i)
641
{
642
((ListBox)Controls[1]).Items.Remove(((ListBox)Controls[1]).Items[index]);
643
}
644
}
645
646
public void iRemoveItemR()
647
{
648
this.EnsureChildControls();
649
int i = ((ListBox)Controls[11]).SelectedIndex;
650
if (i >= 0)
651
{
652
((ListBox)Controls[11]).Items.Remove(((ListBox)Controls[11]).Items[i]);
653
}
654
}
655
public void iRemoveAtItemR(int index)
656
{
657
this.EnsureChildControls();
658
int i = ((ListBox)Controls[11]).Items.Count;
659
if (index > 0 && index < i)
660
{
661
((ListBox)Controls[11]).Items.Remove(((ListBox)Controls[11]).Items[index]);
662
}
663
}
664
//重载宽度
665
public override Unit Width
666
{
667
get
668
{
669
return base.Width;
670
}
671
set
672
{
673
base.Width = value;
674
this.EnsureChildControls();
675
((ListBox)Controls[1]).Width = System.Convert.ToInt32(value.Value * 0.4);
676
((ListBox)Controls[11]).Width = System.Convert.ToInt32(value.Value * 0.4);
677
}
678
}
679
680
//重载高度
681
public override Unit Height
682
{
683
get
684
{
685
return base.Height;
686
}
687
set
688
{
689
base.Height = value;
690
this.EnsureChildControls();
691
((ListBox)Controls[1]).Height = System.Convert.ToInt32(value.Value * 0.98);
692
((ListBox)Controls[11]).Height = System.Convert.ToInt32(value.Value * 0.98);
693
}
694
}
695
696
697
}//class
698
}//namespace
699
using System;2
using System.Web.UI;3
using System.Web.UI.WebControls;4
using System.ComponentModel;5
using System.Text;6

7
namespace JX_CC_LC8
{9
/// <summary>10
/// LC_T02 的摘要描述。11
/// 清单类型控件项类型212
/// 完成日期:2005-12-2213
/// 编码人员:Free14
/// </summary>15
// [DefaultProperty("Text"), 16
// ToolboxData("<{0}:LC_T02 runat=server></{0}:LC_T02>")]17
public class LC_T02 : WebControl, System.Web.UI.INamingContainer18
{19
//声明所要用到的 ListBox ,ImageButton20
private System.Web.UI.WebControls.ListBox ListBleft_LcT02;21
private System.Web.UI.WebControls.ListBox ListBright_LcT02;22

23
private System.Web.UI.WebControls.ImageButton ibt_AllToR;24
private System.Web.UI.WebControls.ImageButton ibt_OneToR;25
private System.Web.UI.WebControls.ImageButton ibt_OneToL;26
private System.Web.UI.WebControls.ImageButton ibt_AllToL;27

28
private System.Web.UI.WebControls.ImageButton ibt_First;29
private System.Web.UI.WebControls.ImageButton ibt_Pre;30
private System.Web.UI.WebControls.ImageButton ibt_Next;31
private System.Web.UI.WebControls.ImageButton ibt_Last;32

33
private int wid = 150, hei = 200;34

35
protected override void CreateChildControls()36
{37
this.Controls.Clear();38
//this.ClearChildViewState();39
//整体的大TABLE 40
this.Controls.Add(new LiteralControl("<table><tr><td><table><tr><td rowspan=5>"));41
//左半部分42
this.ListBleft_LcT02 = new ListBox();43
this.ListBleft_LcT02.Width = wid;44
this.ListBleft_LcT02.Height = hei;45
this.ListBleft_LcT02.ID = this.ID + "_leftListB";46
//this.ListBleft_LcT02.AutoPostBack=true;47
this.ListBleft_LcT02.MergeStyle(this.ControlStyle);48
this.Controls.Add(this.ListBleft_LcT02);49

50
this.Controls.Add(new LiteralControl("</td></tr><tr><td>"));51
this.ibt_AllToR = new ImageButton();52
this.ibt_AllToR.ImageUrl = "img/alltoright.JPG";53
this.ibt_AllToR.Attributes.Add("onclick", this.ID + "_allToR_click();return false;");54
this.Controls.Add(this.ibt_AllToR);55
this.Controls.Add(new LiteralControl("</td></tr><tr><td>"));56
this.ibt_OneToR = new ImageButton();57
this.ibt_OneToR.ImageUrl = "img/onetoright.JPG";58
this.ibt_OneToR.Attributes.Add("onclick", this.ID + "_oneToR_click();return false;");59
this.Controls.Add(this.ibt_OneToR);60
this.Controls.Add(new LiteralControl("</td></tr><tr><td>"));61
this.ibt_OneToL = new ImageButton();62
this.ibt_OneToL.ImageUrl = "img/onetoleft.JPG";63
this.ibt_OneToL.Attributes.Add("onclick", this.ID + "_oneToL_click();return false;");64
this.Controls.Add(this.ibt_OneToL);65
this.Controls.Add(new LiteralControl("</td></tr><tr><td>"));66
this.ibt_AllToL = new ImageButton();67
this.ibt_AllToL.ImageUrl = "img/alltoleft.JPG";68
this.ibt_AllToL.Attributes.Add("onclick", this.ID + "_allToL_click();return false;");69
this.Controls.Add(this.ibt_AllToL);70
this.Controls.Add(new LiteralControl("</td></tr></table></td><td><table><tr><td rowspan=5>"));71
//右半部分72
this.ListBright_LcT02 = new ListBox();73
this.ListBright_LcT02.Width = wid;74
this.ListBright_LcT02.Height = hei;75
this.ListBright_LcT02.ID = this.ID + "_rightListB";76
//this.ListBright_LcT02.AutoPostBack=true;77
this.ListBright_LcT02.MergeStyle(this.ControlStyle);78
this.Controls.Add(this.ListBright_LcT02);79

80
this.Controls.Add(new LiteralControl("</td></tr><tr><td>"));81
this.ibt_First = new ImageButton();82
this.ibt_First.ImageUrl = "img/first.JPG";83
this.ibt_First.Attributes.Add("onclick", this.ID + "_first_click();return false;");84
this.Controls.Add(this.ibt_First);85
this.Controls.Add(new LiteralControl("</td></tr><tr><td>"));86
this.ibt_Pre = new ImageButton();87
this.ibt_Pre.ImageUrl = "img/pre.JPG";88
this.ibt_Pre.Attributes.Add("onclick", this.ID + "_pre_click();return false;");89
this.Controls.Add(this.ibt_Pre);90
this.Controls.Add(new LiteralControl("</td></tr><tr><td>"));91
this.ibt_Next = new ImageButton();92
this.ibt_Next.ImageUrl = "img/next.JPG";93
this.ibt_Next.Attributes.Add("onclick", this.ID + "_next_click();return false;");94
this.Controls.Add(this.ibt_Next);95
this.Controls.Add(new LiteralControl("</td></tr><tr><td>"));96
this.ibt_Last = new ImageButton();97
this.ibt_Last.ImageUrl = "img/last.JPG";98
this.ibt_Last.Attributes.Add("onclick", this.ID + "_last_click();return false;");99
this.Controls.Add(this.ibt_Last);100
this.Controls.Add(new LiteralControl("</td></tr></table></td>"));101
this.Controls.Add(new LiteralControl("</tr></table>"));102

103
base.CreateChildControls();104

105
//JS 部分106
//all to right107

108
System.Text.StringBuilder strbuild = new StringBuilder();109
strbuild.Append("<script language='javascript'>");110

111
strbuild.Append(" function " + this.ID + "_allToR_click(){");112
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_leftListB.options.length;");113
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_leftListB.options.length;");114
strbuild.Append(" var j=document.all." + this.ID + "_" + this.ID + "_rightListB.options.length;");115
strbuild.Append(" if(i>0){");116
strbuild.Append(" var tempvalue=document.all." + this.ID + "_" + this.ID + "_leftListB.options[0].value;");117
strbuild.Append(" var temptext=document.all." + this.ID + "_" + this.ID + "_leftListB.options[0].text;");118
strbuild.Append(" var temp=new Array([tempvalue,temptext]);");119
strbuild.Append(" for(ii=1;ii<i;ii++){");120
strbuild.Append(" var iv=document.all." + this.ID + "_" + this.ID + "_leftListB.options[ii].value;");121
strbuild.Append(" var it=document.all." + this.ID + "_" + this.ID + "_leftListB.options[ii].text;");122
strbuild.Append(" temp.push([iv,it]);");123
strbuild.Append(" }");124
strbuild.Append(" for(jj=0;jj<j;jj++){");125
strbuild.Append(" var jv=document.all." + this.ID + "_" + this.ID + "_rightListB.options[jj].value;");126
strbuild.Append(" var jt=document.all." + this.ID + "_" + this.ID + "_rightListB.options[jj].text;");127
strbuild.Append(" temp.push([jv,jt]);");128
strbuild.Append(" }");129
strbuild.Append(" temp.sort();");130
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options.length=0;");131
strbuild.Append(" for(ss=0;ss<i+j;ss++){");132
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[ss]=new Option(temp[ss][1],temp[ss][0]);");133
strbuild.Append(" }");134
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_leftListB.options.length=0;");135
strbuild.Append("} }</script>");136

137
//one to right138

139
strbuild.Append("<script language='javascript'>");140
strbuild.Append(" function " + this.ID + "_oneToR_click(){");141
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_leftListB.selectedIndex;");142
strbuild.Append(" var j=document.all." + this.ID + "_" + this.ID + "_rightListB.options.length;");143
strbuild.Append(" if(i>=0){");144
strbuild.Append(" var tempvalue=document.all." + this.ID + "_" + this.ID + "_leftListB.options[i].value;");145
strbuild.Append(" var temptext=document.all." + this.ID + "_" + this.ID + "_leftListB.options[i].text;");146
strbuild.Append(" var temp=new Array([tempvalue,temptext]);");147
strbuild.Append(" for(jj=0;jj<j;jj++){");148
strbuild.Append(" var jv=document.all." + this.ID + "_" + this.ID + "_rightListB.options[jj].value;");149
strbuild.Append(" var jt=document.all." + this.ID + "_" + this.ID + "_rightListB.options[jj].text;");150
strbuild.Append(" temp.push([jv,jt]);");151
strbuild.Append(" }");152
strbuild.Append(" temp.sort();");153
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options.length=0;");154
strbuild.Append(" for(ss=0;ss<j+1;ss++){");155
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[ss]=new Option(temp[ss][1],temp[ss][0]);");156
strbuild.Append(" }");157
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_leftListB.remove(i);");158
strbuild.Append("} }</script>");159

160
//one to left161

162
strbuild.Append("<script language='javascript'>");163
strbuild.Append(" function " + this.ID + "_oneToL_click(){");164
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex;");165
strbuild.Append(" var j=document.all." + this.ID + "_" + this.ID + "_leftListB.options.length;");166
strbuild.Append(" if(i>=0){");167
strbuild.Append(" var tempvalue=document.all." + this.ID + "_" + this.ID + "_rightListB.options[i].value;");168
strbuild.Append(" var temptext=document.all." + this.ID + "_" + this.ID + "_rightListB.options[i].text;");169
strbuild.Append(" var temp=new Array([tempvalue,temptext]);");170
strbuild.Append(" for(jj=0;jj<j;jj++){");171
strbuild.Append(" var jv=document.all." + this.ID + "_" + this.ID + "_leftListB.options[jj].value;");172
strbuild.Append(" var jt=document.all." + this.ID + "_" + this.ID + "_leftListB.options[jj].text;");173
strbuild.Append(" temp.push([jv,jt]);");174
strbuild.Append(" }");175
strbuild.Append(" temp.sort();");176
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_leftListB.options.length=0;");177
strbuild.Append(" for(ss=0;ss<j+1;ss++){");178
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_leftListB.options[ss]=new Option(temp[ss][1],temp[ss][0]);");179
strbuild.Append(" }");180
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.remove(i);");181
strbuild.Append("} }</script>");182

183
//all to left184

185
strbuild.Append("<script language='javascript'>");186
strbuild.Append(" function " + this.ID + "_allToL_click(){");187
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_leftListB.options.length;");188
strbuild.Append(" var j=document.all." + this.ID + "_" + this.ID + "_rightListB.options.length;");189
strbuild.Append(" if(j>0){");190
strbuild.Append(" var tempvalue=document.all." + this.ID + "_" + this.ID + "_rightListB.options[0].value;");191
strbuild.Append(" var temptext=document.all." + this.ID + "_" + this.ID + "_rightListB.options[0].text;");192
strbuild.Append(" var temp=new Array([tempvalue,temptext]);");193
strbuild.Append(" for(jj=1;jj<j;jj++){");194
strbuild.Append(" var jv=document.all." + this.ID + "_" + this.ID + "_rightListB.options[jj].value;");195
strbuild.Append(" var jt=document.all." + this.ID + "_" + this.ID + "_rightListB.options[jj].text;");196
strbuild.Append(" temp.push([jv,jt]);");197
strbuild.Append(" }");198
strbuild.Append(" for(ii=0;ii<i;ii++){");199
strbuild.Append(" var iv=document.all." + this.ID + "_" + this.ID + "_leftListB.options[ii].value;");200
strbuild.Append(" var it=document.all." + this.ID + "_" + this.ID + "_leftListB.options[ii].text;");201
strbuild.Append(" temp.push([iv,it]);");202
strbuild.Append(" }");203
strbuild.Append(" temp.sort();");204
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_leftListB.options.length=0;");205
strbuild.Append(" for(ss=0;ss<i+j;ss++){");206
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_leftListB.options[ss]=new Option(temp[ss][1],temp[ss][0]);");207
strbuild.Append(" }");208
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options.length=0;");209
strbuild.Append("} }</script>");210

211
//first212

213
strbuild.Append("<script language='javascript'>");214
strbuild.Append(" function " + this.ID + "_first_click(){");215
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_rightListB.options.length;");216
strbuild.Append(" var j=document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex;");217
strbuild.Append(" if(i>1&&j>0){");218
strbuild.Append(" var tempValue=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].value;");219
strbuild.Append(" var tempText=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].text;");220
strbuild.Append(" for(var h=j;h>0;h--){");221
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[h].value=document.all." + this.ID + "_" + this.ID + "_rightListB.options[h-1].value;");222
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[h].text=document.all." + this.ID + "_" + this.ID + "_rightListB.options[h-1].text;");223
strbuild.Append(" }");224
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[0].value=tempValue;");225
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[0].text=tempText;");226
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex=0;");227
strbuild.Append("} }</script>");228

229
//pre230
strbuild.Append("<script language='javascript'>");231
strbuild.Append(" function " + this.ID + "_pre_click(){");232
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_rightListB.options.length;");233
strbuild.Append(" var j=document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex;");234
strbuild.Append(" if(i>1&&j>0){");235
strbuild.Append(" var tempValue=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].value;");236
strbuild.Append(" var tempText=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].text;");237
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].value=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j-1].value;");238
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].text=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j-1].text;");239
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[j-1].value=tempValue;");240
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[j-1].text=tempText;");241
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex=j-1;");242
strbuild.Append("} }</script>");243

244
//next245

246
strbuild.Append("<script language='javascript'>");247
strbuild.Append(" function " + this.ID + "_next_click(){");248
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_rightListB.options.length;");249
strbuild.Append(" var j=document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex;");250
strbuild.Append(" if(i>1&&j<i-1){");251
strbuild.Append(" var tempValue=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].value;");252
strbuild.Append(" var tempText=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].text;");253
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].value=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j+1].value;");254
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].text=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j+1].text;");255
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[j+1].value=tempValue;");256
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[j+1].text=tempText;");257
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex=j+1;");258
strbuild.Append("} }</script>");259

260
//last261

262
strbuild.Append("<script language='javascript'>");263
strbuild.Append(" function " + this.ID + "_last_click(){");264
strbuild.Append(" var i=document.all." + this.ID + "_" + this.ID + "_rightListB.options.length;");265
strbuild.Append(" var j=document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex;");266
strbuild.Append(" if(i>1&&j<i-1){");267
strbuild.Append(" var tempValue=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].value;");268
strbuild.Append(" var tempText=document.all." + this.ID + "_" + this.ID + "_rightListB.options[j].text;");269
strbuild.Append(" for(var h=j;h<i-1;h++){");270
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[h].value=document.all." + this.ID + "_" + this.ID + "_rightListB.options[h+1].value;");271
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[h].text=document.all." + this.ID + "_" + this.ID + "_rightListB.options[h+1].text;");272
strbuild.Append("}");273
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[i-1].value=tempValue;");274
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.options[i-1].text=tempText;");275
strbuild.Append(" document.all." + this.ID + "_" + this.ID + "_rightListB.selectedIndex=i-1;");276
strbuild.Append("} }</script>");277
this.Controls.Add(new LiteralControl(strbuild.ToString()));278
}279

280
protected override void Render(HtmlTextWriter writer)281
{282
this.EnsureChildControls();283
base.Render(writer);284
}285

286

287
//控制图像显示288
[Bindable(false),289
Category("imagebuttonsrc"),290
DefaultValue("")]291
//全右移292
public string alltoright_src293
{294
get295
{296
this.EnsureChildControls();297
return ((ImageButton)Controls[3]).ImageUrl;298

299
}300
set301
{302
this.EnsureChildControls();303
((ImageButton)Controls[3]).ImageUrl = value;304
}305
}306
//个右移307
public string onetoright_src308
{309
get310
{311
this.EnsureChildControls();312
return ((ImageButton)Controls[5]).ImageUrl;313
}314
set315
{316
this.EnsureChildControls();317
((ImageButton)Controls[5]).ImageUrl = value;318
}319
}320
//个左移321
public string onetoleft_src322
{323
get324
{325
this.EnsureChildControls();326
return ((ImageButton)Controls[7]).ImageUrl;327
}328
set329
{330
this.EnsureChildControls();331
((ImageButton)Controls[7]).ImageUrl = value;332
}333
}334
//全左移335
public string alltoleft_src336
{337
get338
{339
this.EnsureChildControls();340
return ((ImageButton)Controls[9]).ImageUrl;341
}342
set343
{344
this.EnsureChildControls();345
((ImageButton)Controls[9]).ImageUrl = value;346
}347
}348
//最先349
public string first_src350
{351
get352
{353
this.EnsureChildControls();354
return ((ImageButton)Controls[13]).ImageUrl;355
}356
set357
{358
this.EnsureChildControls();359
((ImageButton)Controls[13]).ImageUrl = value;360
}361
}362
//前一363
public string pre_src364
{365
get366
{367
this.EnsureChildControls();368
return ((ImageButton)Controls[15]).ImageUrl;369
}370
set371
{372
this.EnsureChildControls();373
((ImageButton)Controls[15]).ImageUrl = value;374
}375
}376
//后一377
public string next_src378
{379
get380
{381
this.EnsureChildControls();382
return ((ImageButton)Controls[17]).ImageUrl;383
}384
set385
{386
this.EnsureChildControls();387
((ImageButton)Controls[17]).ImageUrl = value;388
}389
}390
//最后391
public string last_src392
{393
get394
{395
this.EnsureChildControls();396
return ((ImageButton)Controls[19]).ImageUrl;397
}398
set399
{400
this.EnsureChildControls();401
((ImageButton)Controls[19]).ImageUrl = value;402
}403
}404

405
//公开左右LISTBOX的相关属性和方法406
//iDataSource407
public object iDataSourceL408
{409
get410
{411
this.EnsureChildControls();412
return ((ListBox)Controls[1]).DataSource;413
}414
set415
{416
this.EnsureChildControls();417
((ListBox)Controls[1]).DataSource = value;418
}419
}420
public object iDataSourceR421
{422
get423
{424
this.EnsureChildControls();425
return ((ListBox)Controls[11]).DataSource;426
}427
set428
{429
this.EnsureChildControls();430
((ListBox)Controls[11]).DataSource = value;431
}432
}433
//434
public string iDataTextFieldL435
{436
get437
{438
this.EnsureChildControls();439
return ((ListBox)Controls[1]).DataTextField;440
}441
set442
{443
this.EnsureChildControls();444
((ListBox)Controls[1]).DataTextField = value;445
}446

447
}448
public string iDataValueFieldL449
{450
get451
{452
this.EnsureChildControls();453
return ((ListBox)Controls[1]).DataValueField;454
}455
set456
{457
this.EnsureChildControls();458
((ListBox)Controls[1]).DataValueField = value;459
}460

461
}462
//463
public string iDataTextFieldR464
{465
get466
{467
this.EnsureChildControls();468
return ((ListBox)Controls[11]).DataTextField;469
}470
set471
{472
this.EnsureChildControls();473
((ListBox)Controls[11]).DataTextField = value;474
}475

476
}477
public string iDataValueFieldR478
{479
get480
{481
this.EnsureChildControls();482
return ((ListBox)Controls[11]).DataValueField;483
}484
set485
{486
this.EnsureChildControls();487
((ListBox)Controls[11]).DataValueField = value;488
}489

490
}491
//iDataBind492
public void iDataBindL()493
{494
this.EnsureChildControls();495
((ListBox)Controls[1]).DataBind();496
}497
public void iDataBindR()498
{499
this.EnsureChildControls();500
((ListBox)Controls[11]).DataBind();501
}502
//得到目前的索引 iSelectIndex503
public int iSelectIndexL()504
{505
this.EnsureChildControls();506
int i = ((ListBox)Controls[1]).SelectedIndex;507
return i;508
}509
public int iSelectIndexR()510
{511
this.EnsureChildControls();512
int i = ((ListBox)Controls[11]).SelectedIndex;513
return i;514
}515
//得到ITEM的个数 iCountItem516
public int iCountItemL()517
{518
this.EnsureChildControls();519
int i = ((ListBox)Controls[1]).Items.Count;520
return i;521
}522
public int iCountItemR()523
{524
this.EnsureChildControls();525
int i = ((ListBox)Controls[11]).Items.Count;526
return i;527
}528
//添加一个ITEM 到LISTBOX529
public void iAddItemL(string addText, string addValue)530
{531
this.EnsureChildControls();532
ListItem temp = new ListItem();533
temp.Text = addText.Trim().ToString();534
temp.Value = addValue.Trim().ToString();535
((ListBox)Controls[1]).Items.Add(temp);536
}537
public void iAddItemL(string addText)538
{539
this.EnsureChildControls();540
ListItem temp = new ListItem();541
temp.Text = addText.Trim().ToString();542
((ListBox)Controls[1]).Items.Add(temp);543
}544
public void iAddItemR(string addText, string addValue)545
{546
this.EnsureChildControls();547
ListItem temp = new ListItem();548
temp.Text = addText.Trim().ToString();549
temp.Value = addValue.Trim().ToString();550
((ListBox)Controls[11]).Items.Add(temp);551
}552
public void iAddItemR(string addText)553
{554
this.EnsureChildControls();555
ListItem temp = new ListItem();556
temp.Text = addText.Trim().ToString();557
((ListBox)Controls[11]).Items.Add(temp);558
}559
//返回当前所选的Item项560
public ListItem iSelectItemL()561
{562
this.EnsureChildControls();563
int index = ((ListBox)Controls[1]).SelectedIndex;564
int i = ((ListBox)Controls[1]).Items.Count;565
if (index >= 0 && index < i)566
{567
return ((ListBox)Controls[1]).Items[index];568
}569
else570
{571
return null;572
}573
}574
public ListItem iSelectItemR()575
{576
this.EnsureChildControls();577
int index = ((ListBox)Controls[11]).SelectedIndex;578
int i = ((ListBox)Controls[11]).Items.Count;579
if (index >= 0 && index < i)580
{581
return ((ListBox)Controls[11]).Items[index];582
}583
else584
{585
return null;586
}587
}588
//选择LISTBOX中第index项589
public ListItem iSelectItemL(int index)590
{591
this.EnsureChildControls();592
int i = ((ListBox)Controls[1]).Items.Count;593
if (index >= 0 && index < i)594
{595
return ((ListBox)Controls[1]).Items[index];596
}597
else598
{599
return null;600
}601
}602
public ListItem iSelectItemR(int index)603
{604
this.EnsureChildControls();605
int i = ((ListBox)Controls[11]).Items.Count;606
if (index >= 0 && index < i)607
{608
return ((ListBox)Controls[11]).Items[index];609
}610
else611
{612
return null;613
}614
}615
//清空LISTBOX616
public void iClearItemL()617
{618
this.EnsureChildControls();619
((ListBox)Controls[1]).Items.Clear();620
}621
public void iClearItemR()622
{623
this.EnsureChildControls();624
((ListBox)Controls[11]).Items.Clear();625
}626
//删除目前的所选值627
public void iRemoveItemL()628
{629
this.EnsureChildControls();630
int i = ((ListBox)Controls[1]).SelectedIndex;631
if (i >= 0)632
{633
((ListBox)Controls[1]).Items.Remove(((ListBox)Controls[1]).Items[i]);634
}635
}636
public void iRemoveAtItemL(int index)637
{638
this.EnsureChildControls();639
int i = ((ListBox)Controls[1]).Items.Count;640
if (index > 0 && index < i)641
{642
((ListBox)Controls[1]).Items.Remove(((ListBox)Controls[1]).Items[index]);643
}644
}645

646
public void iRemoveItemR()647
{648
this.EnsureChildControls();649
int i = ((ListBox)Controls[11]).SelectedIndex;650
if (i >= 0)651
{652
((ListBox)Controls[11]).Items.Remove(((ListBox)Controls[11]).Items[i]);653
}654
}655
public void iRemoveAtItemR(int index)656
{657
this.EnsureChildControls();658
int i = ((ListBox)Controls[11]).Items.Count;659
if (index > 0 && index < i)660
{661
((ListBox)Controls[11]).Items.Remove(((ListBox)Controls[11]).Items[index]);662
}663
}664
//重载宽度665
public override Unit Width666
{667
get668
{669
return base.Width;670
}671
set672
{673
base.Width = value;674
this.EnsureChildControls();675
((ListBox)Controls[1]).Width = System.Convert.ToInt32(value.Value * 0.4);676
((ListBox)Controls[11]).Width = System.Convert.ToInt32(value.Value * 0.4);677
}678
}679

680
//重载高度681
public override Unit Height682
{683
get684
{685
return base.Height;686
}687
set688
{689
base.Height = value;690
this.EnsureChildControls();691
((ListBox)Controls[1]).Height = System.Convert.ToInt32(value.Value * 0.98);692
((ListBox)Controls[11]).Height = System.Convert.ToInt32(value.Value * 0.98);693
}694
}695

696

697
}//class698
}//namespace699

posted on 2006-12-08 11:43 freeliver54 阅读(594) 评论(2) 收藏 举报


浙公网安备 33010602011771号