c# tcbs之遞迴方法查詢符合條件的控制元件
public CoreTextBox FindAccountNumberTextBox(Control parentControl) //parentcontrol在此為窗體
{
CoreTextBox textBox = null;//要返回匹配條件的文字框(當然經過TCBS封裝過的)
if (parentControl != null) //判斷方法傳入引數是為空
{
textBox = parentControl as CoreTextBox;//傳入引數可能為窗體或窗體的子控制元件,透過as進行靈活操作,用as即使轉換不成功,也只是返回NULL,而不是異常
//此IF是個匹配條件,與上面的as結合起來,textbox!=null表明它是coretextbox
//textbox.use表明文字框的用途必須是accountnumber,其它文字框就過濾掉了
if ((textBox != null) && (textBox.Use == CoreTextBox.TextBoxUse.AccountNumber))
{
return textBox;//符合文字框且文字框用途是accountnumber才返回textbox
}
if (parentControl.HasChildren)//傳入的方法引數為窗體,haschildren屬性就是真,表明有子控制元件
{
//遍歷有子控制元件的窗體
for (int i = 0; i < parentControl.Controls.Count; i++)
{
//注:在此又呼叫本身方法(遞迴,即方法呼叫自己),只是此時方法引數由原來的窗體變為窗體下在遍歷的某個子控制元件
//在此為窗體某個textbox(coretextbox),執行到此方法時,又開始從此方法的開頭部分執行,邏輯為:
//判斷此子控制元件不空,且是文字框,然後,判斷它的用途是不是acctountnumber,發現有些文字框不是,就不會執行對應if語句,
//接著繼續執行判斷此子控制元件是否有子控制元件,發現文字框沒有子控制元件,不再執行最後的遍歷程式碼;依此邏輯重複迴圈其它的子控制元件
//僅找到一個符合條件的子控制元件
textBox = this.FindAccountNumberTextBox(parentControl.Controls[i]);
//找到了此子控制元件,就返回此子控制元件
if (textBox != null)
{
return textBox;
}
}
}
}
return null;//方法引數為空,直接返回null
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-721447/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 儲存過程中的符合條件查詢 and 1= ''+@knlgName+''儲存過程
- exp匯出一個表中符合查詢條件的資料
- c#之tcbs方法示例hasvalueC#
- c#之tcbs method方法示例C#
- c#之tcbs method方法_getC#
- 簡單C#遞迴(向前查詢上工序)C#遞迴
- PostgreSQL 遞迴查詢SQL遞迴
- PostgreSQL=>遞迴查詢SQL遞迴
- SqlServer遞迴查詢SQLServer遞迴
- ORACLE 遞迴查詢Oracle遞迴
- sqlalchemy 遞迴查詢SQL遞迴
- c# tcbs之類中方法的特徵C#特徵
- Oracle SQL的遞迴查詢OracleSQL遞迴
- iOS 演算法之排序、查詢、遞迴iOS演算法排序遞迴
- MongoDB查詢條件MongoDB
- MongoDB條件查詢MongoDB
- mysql條件查詢MySql
- SQL Server遞迴查詢SQLServer遞迴
- Oracle遞迴查詢sqlOracle遞迴SQL
- 一個遞迴查詢遞迴
- 遞迴查詢子元素遞迴
- 快遞查詢 C#C#
- mysql多條件過濾查詢之mysq高階查詢MySql
- MS SQL Server的遞迴查詢SQLServer遞迴
- Laravel 多條件查詢Laravel
- SQL多條件查詢SQL
- 條件查詢JSPJS
- sql無限遞迴查詢SQL遞迴
- grep遞迴查詢子目錄遞迴
- sql遞迴查詢子級SQL遞迴
- 寫一個“特殊”的查詢構造器 – (四、條件查詢:複雜條件)
- 關於樹型結構資料遞迴查詢,轉非遞迴查詢的實現遞迴
- 查詢作為條件的SQLSQL
- 我對Postgresql遞迴查詢的理解SQL遞迴
- MS SQL Server的遞迴查詢(2)SQLServer遞迴
- oracle中的遞迴sql查詢 connect by prior實現遞迴Oracle遞迴SQL
- MongoDB之資料查詢(where條件過濾)MongoDB
- 【聽海日誌】之ORACLE遞迴查詢學習Oracle遞迴