第二篇

既然已经决定重做了

 

权限的问题最好还是放在第一个考虑的环节

 

可以在权限前调用 beginInitAcitonState();
可以在权限后调用  AfterInitAcitonState();


还可以
private void InitAcitonStateCollection()
 {             
beginInitAcitonState(); 
//  do my self  
AfterInitAcitonState();
}

 

 

 

  1  private void C11020010_Load(object sender, EventArgs e)
  2         {
  3             InitAcitonStateCollection();
  4             setAllControlColor(this);
  5 
  6         }
  7 
  8 
  9 
 10 
 11         private void setAllControlColor(Control Acontrol)
 12         {
 13             foreach (Control c in Acontrol.Controls)
 14             {
 15                 c.BackColor = System.Drawing.Color.FromArgb(223232244); 
 16                 if (c.HasChildren)
 17                     setAllControlColor(c);
 18             }
 19 
 20         }
 21 
 22 
 23 
 24         private void InitAcitonStateCollection()
 25         {
 26              beginInitAcitonState();
 27 
 28              //foreach (AcitonState state in (IEnumerator(of<AcitonState>)))
 29              //
 30              
 31              //}
 32 
 33              AfterInitAcitonState();
 34                          
 35         }
 36 
 37         private void AfterInitAcitonState()
 38         {
 39             foreach (KeyValuePair<AcitonState, bool> akey in actions)
 40             {
 41                 switch (akey.Key)
 42                 { 
 43                     case AcitonState.Save :
 44                         Save.Enabled = akey.Value;
 45                         break;
 46                     case AcitonState.Add:
 47                         Add.Enabled = akey.Value;
 48                         break;
 49                     case AcitonState.Edit:
 50                         Edit.Enabled = akey.Value;
 51                         break;
 52                     case AcitonState.AddRow:
 53                         AddRow.Enabled = akey.Value;                   
 54                         break;
 55                     case AcitonState.DeleteRow:
 56                         DeleteRow.Enabled = akey.Value;
 57                         break;
 58                     case AcitonState.Cancel:
 59                         Cancel.Enabled = akey.Value;                   
 60                         break;
 61                     case AcitonState.Delete:
 62                         Delete.Enabled = akey.Value;
 63                         break;
 64 
 65 
 66                     case AcitonState.SearchSheet:
 67                          SearchSheet.Enabled = akey.Value;                        
 68                         break;
 69                     case AcitonState.FirstSheet:
 70                         FirstSheet.Enabled = akey.Value;
 71                         break;
 72                     case AcitonState.PriviewSheet:
 73                         PriviewSheet.Enabled = akey.Value;
 74                         break;
 75                     case AcitonState.NextSheet:
 76                         NextSheet.Enabled = akey.Value;
 77                         break;
 78                     case AcitonState.LastSheet:
 79                         LastSheet.Enabled = akey.Value;
 80                         break;
 81 
 82 
 83                     case AcitonState.Audit:
 84                         Audit.Enabled = akey.Value;
 85                         break;
 86 
 87                 }
 88             }
 89         }
 90 
 91         private void beginInitAcitonState()
 92         {
 93             actions.Add(AcitonState.Init, true);
 94             actions.Add(AcitonState.Save, true);
 95             actions.Add(AcitonState.Add, true);
 96             actions.Add(AcitonState.Edit, true);  
 97             actions.Add(AcitonState.AddRow, true);
 98             actions.Add(AcitonState.DeleteRow, true);           
 99             actions.Add(AcitonState.Cancel, false);
100             actions.Add(AcitonState.Delete, true);
101 
102             actions.Add(AcitonState.SearchSheet, true);            
103             actions.Add(AcitonState.FirstSheet, true);
104             actions.Add(AcitonState.PriviewSheet, true);
105             actions.Add(AcitonState.NextSheet, true);
106             actions.Add(AcitonState.LastSheet, true);
107 
108             actions.Add(AcitonState.Audit, true);
109         }
110 
111 
112 
113         public Dictionary<AcitonState, bool> actions = new Dictionary<AcitonState, bool>();
114 
115 
116 
117 
118 
119         private void Init_Click(object sender, EventArgs e)
120         {
121 
122 
123             UpdateAcitonState(AcitonState.Init);
124         }
125 
126         private void Save_Click(object sender, EventArgs e)
127         {
128 
129 
130             UpdateAcitonState(AcitonState.Save);
131         }
132 
133         private void Add_Click(object sender, EventArgs e)
134         {
135 
136 
137             UpdateAcitonState(AcitonState.Add);
138         }
139 
140         private void Edit_Click(object sender, EventArgs e)
141         {
142 
143             UpdateAcitonState(AcitonState.Edit);
144         }
145 
146         private void AddRow_Click(object sender, EventArgs e)
147         {
148 
149             UpdateAcitonState(AcitonState.AddRow);
150         }
151 
152         private void DeleteRow_Click(object sender, EventArgs e)
153         {
154 
155             UpdateAcitonState(AcitonState.DeleteRow);
156         }
157 
158         private void Cancel_Click(object sender, EventArgs e)
159         {
160 
161             UpdateAcitonState(AcitonState.Cancel);
162         }
163 
164         private void Delete_Click(object sender, EventArgs e)
165         {
166 
167             UpdateAcitonState(AcitonState.Delete);
168         }
169 
170         private void SearchSheet_Click(object sender, EventArgs e)
171         {
172 
173             UpdateAcitonState(AcitonState.SearchSheet);
174         }
175 
176         private void FirstSheet_Click(object sender, EventArgs e)
177         {
178 
179             UpdateAcitonState(AcitonState.FirstSheet);
180         }
181 
182         private void PriviewSheet_Click(object sender, EventArgs e)
183         {
184             UpdateAcitonState(AcitonState.PriviewSheet);
185         }
186 
187         private void NextSheet_Click(object sender, EventArgs e)
188         {
189             UpdateAcitonState(AcitonState.NextSheet);
190         }
191 
192         private void LastSheet_Click(object sender, EventArgs e)
193         {
194             UpdateAcitonState(AcitonState.LastSheet);
195         }
196 
197         private void Audit_Click(object sender, EventArgs e)
198         {
199             UpdateAcitonState(AcitonState.Audit);
200         }
201 
202 
203 
204 
205         private void UpdateAcitonState(AcitonState State)
206         {
207 
208         }
209 
210 }

 

posted @ 2011-07-26 13:56  Ry5  阅读(235)  评论(0编辑  收藏  举报