Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MVC C#下拉列表,显示模型上的System.Web.SelectListItem,不能对控制器视而不见_C#_Html_Asp.net Mvc_Drop Down Menu - Fatal编程技术网

MVC C#下拉列表,显示模型上的System.Web.SelectListItem,不能对控制器视而不见

MVC C#下拉列表,显示模型上的System.Web.SelectListItem,不能对控制器视而不见,c#,html,asp.net-mvc,drop-down-menu,C#,Html,Asp.net Mvc,Drop Down Menu,请帮帮我。我的下拉列表显示System.Web。在调试模式下选择ListItem,但不显示我在列表中定义的实际文本。谁能帮忙吗。如何使控制器具有我在列表中定义的文本。此外,我的下拉列表在选择时不会盲目。请帮帮我 以下是我的模型: public List<SelectListItem> KeywordOptions { get; set; } public int KeywordOptionsSelected { get; set; } public List<SelectLi

请帮帮我。我的下拉列表显示
System.Web。在调试模式下选择ListItem
,但不显示我在列表中定义的实际文本。谁能帮忙吗。如何使控制器具有我在列表中定义的文本。此外,我的下拉列表在选择时不会盲目。请帮帮我

以下是我的模型:

public List<SelectListItem> KeywordOptions { get; set; }
public int KeywordOptionsSelected { get; set; }
public List<SelectListItem> MarketandRevenueOptions { get; set; }
public int MarketandRevenueOptionsSelected { get; set; }
    
public List<SelectListItem> KeywordsList { get; set; }
public int KeywordsListSelected { get; set; }
public List关键字选项{get;set;}
public int关键字选项selected{get;set;}
公共列表MarketAndEventOptions{get;set;}
public int MarketandRevenueOptionSelected{get;set;}
公共列表关键字列表{get;set;}
public int关键字列表选定{get;set;}
这是控制器:

public ActionResult WACCtest(string RegionID1, bool HongKong = false, bool China = false, bool marketmultiples = false, bool dcf = false)
{
    var objWACC = new WACC();

    XmlDocument xmlTmp = webS.GetWaccOptionsIndustries();
    objWACC.Industries = new List<Industry>();

    XmlDocument nodeCompsTmp = webS._Test_CompsFilter();
    objWACC.Companies = new List<ComparableCompanies>();

    XmlDocument nodeMktRevenueTmp = webS._Test_MktCapRevenue();
    objWACC.MrkCapRevenue = new List<MrkCapAndRevenue>();

    XmlNodeList nodeListMktCap1 = nodeMktRevenueTmp.GetElementsByTagName("Mkt_Cap");
    XmlNodeList nodeListRevenue = nodeMktRevenueTmp.GetElementsByTagName("Revenue");

    for (int i = 0; i < nodeListMktCap1.Count; i++)
    {
        MrkCapAndRevenue objMktCapRevenue = new MrkCapAndRevenue();
        objMktCapRevenue.Mrk_Cap = double.Parse(nodeListMktCap1[i].InnerText.Trim());
        objMktCapRevenue.Revenue = nodeListRevenue[i].InnerText.Trim();

        objWACC.MrkCapRevenue.Add(objMktCapRevenue);
    }

    XmlNodeList nodeListCompID = nodeCompsTmp.GetElementsByTagName("Company_ID");
    XmlNodeList nodeListCompName = nodeCompsTmp.GetElementsByTagName("Company_Name");
    XmlNodeList nodeListStockTicker = nodeCompsTmp.GetElementsByTagName("Stock_Ticker");
    XmlNodeList nodeListIPO = nodeCompsTmp.GetElementsByTagName("IPO_Date");
    XmlNodeList nodeListCompWeb = nodeCompsTmp.GetElementsByTagName("Company_Website");
    XmlNodeList nodeListCompDescr = nodeCompsTmp.GetElementsByTagName("Company_Description");

    for (int i = 0; i < nodeListCompID.Count; i++)
    {
        ComparableCompanies objComparableComps = new ComparableCompanies();
        objComparableComps.Company_ID = int.Parse(nodeListCompID[i].InnerText.Trim());
        objComparableComps.Company_Name = nodeListCompName[i].InnerText.Trim();
        objComparableComps.Stock_Ticker = nodeListStockTicker[i].InnerText.Trim();
        objComparableComps.IPO_Date = DateTime.Parse(nodeListIPO[i].InnerText.Trim());
        objComparableComps.Company_Website = nodeListCompWeb[i].InnerText.Trim();
        objComparableComps.Company_Description = nodeListCompDescr[i].InnerText.Trim();

        objWACC.Companies.Add(objComparableComps);
    }

    //EC: add the columns one by one
    XmlNodeList nodeListGICCode = xmlTmp.GetElementsByTagName("GIC_Code");
    XmlNodeList nodeListIndName = xmlTmp.GetElementsByTagName("Industry_Name");
    XmlNodeList nodeListIndLvl = xmlTmp.GetElementsByTagName("Industry_Level");
    XmlNodeList nodeListParentGICCode = xmlTmp.GetElementsByTagName("Parent_GIC_Code");

    for (int i = 0; i < nodeListGICCode.Count; i++)
    {
        Industry indTemp = new Industry();
        indTemp.GIC_Code = int.Parse(nodeListGICCode[i].InnerText.Trim());
        indTemp.Industry_Name = nodeListIndName[i].InnerText.Trim();
        indTemp.Industry_Level = int.Parse(nodeListIndLvl[i].InnerText.Trim());
        indTemp.Parent_GIC_Code = 0;

        if (indTemp.Industry_Level != 1)
        { 
            indTemp.Parent_GIC_Code = int.Parse(nodeListParentGICCode[i].InnerText.Trim()); 
        }  //EC: no need to check the parent if industry level = 1 since it has no parent (will result an exception for level 1)

        objWACC.Industries.Add(indTemp);
    }

    string strValDate = Request.QueryString["ValuationDate"] ?? "2020-01-01";
    string strIndustrySelected = Request.QueryString["IndustrySelected"] ?? "0";     // BW: the selected varaables are based on index value
    string strLocationSelected = Request.QueryString["LocationSelected"] ?? "1";
    string strFV = Request.QueryString["FairValue"] ?? "0.0";
    string strRFR = Request.QueryString["RiskFreeRate"] ?? "0.0";
    string strBETA = Request.QueryString["Beta"] ?? "0.0";
    string strMRPs = Request.QueryString["Mrp"] ?? "0.0";
    string strCAPM = Request.QueryString["CAPM"] ?? "0.0";
    string strTAXRATE = Request.QueryString["TaxRate"] ?? "0.0";
    string strLendingRate = Request.QueryString["LendingRate"] ?? "0.0";
    string strWE = Request.QueryString["WE"] ?? "0.0";
    string strWD = Request.QueryString["WD"] ?? "0.0";
    string strAFTaxCod = Request.QueryString["AFTaxCod"] ?? "0.0";

    string strBetaSelected = Request.QueryString["BetaSelected"] ?? "0";
    string strMrpSelected = Request.QueryString["MrpSelected"] ?? "0";

    string strSizePr = Request.QueryString["SizePremium"] ?? "0.0";
    string strCompSpecPr = Request.QueryString["ComSpecPr"] ?? "0.0";
    string strLendRatePr = Request.QueryString["LendRatePr"] ?? "0.0";

    string strOtherPr = Request.QueryString["OtherPr"] ?? "0.0";

    string strIndustries = Request.QueryString["Industries"] ?? "0";

    string strKeywordOptions = Request.QueryString["KeywordOptions"] ?? "0";

    string strKeywordsSelected = Request.QueryString["KeywordOptionsSelected"] ?? "TEST 2";

    string strMarketandRevenueOptionsSelected = Request.QueryString["MarketandRevenueOptionsSelected"] ?? "0";

    string strKeywordsListSelected = Request.QueryString["KeywordsListSelected"] ?? "0";

    //BW: Define variable as double integer for the selecting Values
    int intIndSel = 0;
    int intLocSel = 0;
    double dblFV = 0.0;
    double dblRFR = 0.0;
    double dblBeta = 0.0;
    double dblMRP = 0.0;
    double dblCAPM = 0.0;
    double dblTAXRATE = 0.0;
    double dblLendingRate = 0.0;
            double dblWE = 0.0;
            double dblWD = 0.0;
            double dblAFTaxCod = 0.0;
            int intBetSel = 0;
            int intMrpSel = 0;
            string[] strVD = new string[3];
            DateTime dtVD = new DateTime(2020, 01, 01);
            List<string> listIndustry = new List<string>();

            int intKeywordsSel = 0;

            int intMarketandRevenueOptionsSel = 0;

            int intKeywordsListSel = 0;

     
      
            double dblSP = 0.0;
            double dblCSP = 0.0;
            double dblLRP = 0.0;
            double dblOPR = 0.0;

            try { intIndSel = int.Parse(strIndustrySelected); } catch { intIndSel = 0; } //EC: add 1 to take into account of the default item 
            try { intLocSel = int.Parse(strLocationSelected); } catch { intLocSel = 0; }
            try { dblFV = double.Parse(strFV); } catch { dblFV = 0.0; }
            try { dblRFR = double.Parse(strRFR); } catch { dblRFR = 0.0; }
            try { dblBeta = double.Parse(strBETA); } catch { dblBeta = 0.0; }
            try { dblMRP = double.Parse(strMRPs); } catch { dblMRP = 0.0; }
            try { dblCAPM = double.Parse(strCAPM); } catch { dblCAPM = 0.0; }
            try { dblTAXRATE = double.Parse(strTAXRATE); } catch { dblTAXRATE = 0.0; }
            try { dblLendingRate = double.Parse(strLendingRate); } catch { dblLendingRate = 0.0; }
            try { dblWE = double.Parse(strWE); } catch { dblWE = 0.0; }
            try { dblWD = double.Parse(strWD); } catch { dblWD = 0.0; }
            try { dblAFTaxCod = double.Parse(strAFTaxCod); } catch { dblWD = 0.0; }
            try { intBetSel = int.Parse(strBetaSelected); } catch { intBetSel = 0; }
            try { intMrpSel = int.Parse(strMrpSelected); } catch { intMrpSel = 0; }
            try { dblSP = double.Parse(strSizePr); } catch { dblSP = 0.0; }
            try { dblCSP = double.Parse(strCompSpecPr); } catch { dblCSP = 0.0; }
            try { dblLRP = double.Parse(strLendRatePr); } catch { dblLRP = 0.0; }
            try { dblOPR = double.Parse(strOtherPr); } catch { dblOPR = 0.0; }

            try { intKeywordsSel = int.Parse(strKeywordsSelected); } catch { intKeywordsSel = 0; }

            try { intMarketandRevenueOptionsSel = int.Parse(strMarketandRevenueOptionsSelected); } catch { intMarketandRevenueOptionsSel = 0; }

            try { intKeywordsListSel = int.Parse(strKeywordsListSelected); } catch { intKeywordsListSel = 0; }
        

            //BW: For testing purpose add data to list 
            try
            {
                listIndustry.Add("Consumer Discretionary");
                listIndustry.Add("");

            }
            catch (Exception e) { Console.WriteLine(e.Message); }

        

            try
            {
                strVD = strValDate.Split('-');
                dtVD = new DateTime(int.Parse(strVD[0].ToString()),
                    int.Parse(strVD[1].ToString()),
                    int.Parse(strVD[2].ToString()));
            }
            catch
            {
                //dtVD = new DateTime(2018, 12, 31);
                dtVD = DateTime.Now;
            }
        

            List<SelectListItem> tmpabc = new List<SelectListItem>();
            tmpabc.Add(new SelectListItem() { Text = "--Select Location--", Value = "2" });
            tmpabc.AddRange(webS.GetWaccOptionsOpLocations());
            resetValuesInListOfSelectListItem(tmpabc);
            objWACC.LocationList = tmpabc;

            List<SelectListItem> tmpbeta = new List<SelectListItem>();
            tmpbeta.Add(new SelectListItem() { Text = "--Select Beta--", Value = "2" });
            tmpbeta.AddRange(webS.GetWaccOptionsBeta());
            resetValuesInListOfSelectListItem(tmpbeta);
            objWACC.BetaList = tmpbeta;

            List<SelectListItem> tmpmrp = new List<SelectListItem>();
            tmpmrp.Add(new SelectListItem() { Text = "--Select Mrp--", Value = "3" });
            tmpmrp.AddRange(webS.GetWaccOptionsMRP());
            resetValuesInListOfSelectListItem(tmpmrp);
            objWACC.MrpList = tmpmrp;


            //BW: return a varible that have the values that user select or input from the UI
            objWACC.IndustrySelected = intIndSel;
            objWACC.LocationSelected = intLocSel;
            objWACC.FairValue = dblFV;
            objWACC.RiskFreeRate = dblRFR;
            objWACC.Beta = dblBeta;
            objWACC.Mrp = dblMRP;
            objWACC.CAPM = dblCAPM;
            objWACC.TaxRate = dblTAXRATE;
            objWACC.LendingRate = dblLendingRate;
            objWACC.WE = dblWE;
            objWACC.WD = dblWD;
            objWACC.AFTaxCod = dblAFTaxCod;
            objWACC.BetaSelected = intBetSel;
            objWACC.MrpSelected = intMrpSel;

            objWACC.SizePremium = dblSP;
            objWACC.ComSpecPr = dblCSP;
            objWACC.LendRatePr = dblLRP;
            objWACC.OtherPr = (objWACC.SizePremium + objWACC.ComSpecPr);

            objWACC.KeywordOptionsSelected = intKeywordsSel;
            objWACC.MarketandRevenueOptionsSelected = intMarketandRevenueOptionsSel;
            objWACC.KeywordsListSelected = intKeywordsListSel;

            string strOpLocation = objWACC.LocationList[intLocSel].Text;
            //string strIndustry = objWACC.IndustryList[intIndSel].Text;
            string strIndustry = "";

            string strBeta = objWACC.BetaList[intBetSel].Text;
            string strMRP = objWACC.MrpList[intMrpSel].Text;           

            string strIndustrylevel = objWACC.Industries.ToString();


            if (strBeta == "Beta WIND" || strBeta == "Beta BDO")
            {

                //BW: need to add string Industry level to webservice. 
                XmlDocument xmlWACCSummary = webS.GetWaccSummary(strOpLocation, strIndustry, strValDate, strMRP, strBeta, dblSP / 100, dblCSP / 100, dblLRP / 100);

                //BW: Below is a temp solution to check if the returned xml is a valid WACC summary
                XmlNodeList nodeWACCTmp = xmlWACCSummary.GetElementsByTagName("Relevered_Beta");
                if (nodeWACCTmp[0] == null)
                {
                    return View(objWACC);
                }

                nodeWACCTmp = xmlWACCSummary.GetElementsByTagName("Relevered_Beta");
                objWACC.Beta = Convert.ToDouble(nodeWACCTmp[0].LastChild.InnerText);

                nodeWACCTmp = xmlWACCSummary.GetElementsByTagName("WE");
                objWACC.WE = Convert.ToDouble(nodeWACCTmp[0].LastChild.InnerText);

                nodeWACCTmp = xmlWACCSummary.GetElementsByTagName("WD");
                objWACC.WD = Convert.ToDouble(nodeWACCTmp[0].LastChild.InnerText);

                nodeWACCTmp = xmlWACCSummary.GetElementsByTagName("MRP");
                objWACC.Mrp = Convert.ToDouble(nodeWACCTmp[0].LastChild.InnerText);

                nodeWACCTmp = xmlWACCSummary.GetElementsByTagName("CAPM");
                objWACC.CAPM = Convert.ToDouble(nodeWACCTmp[0].LastChild.InnerText);

                nodeWACCTmp = xmlWACCSummary.GetElementsByTagName("RFR");
                objWACC.RiskFreeRate = Convert.ToDouble(nodeWACCTmp[0].LastChild.InnerText);

                nodeWACCTmp = xmlWACCSummary.GetElementsByTagName("Tax_Rate");
                objWACC.TaxRate = Convert.ToDouble(nodeWACCTmp[0].LastChild.InnerText);

                nodeWACCTmp = xmlWACCSummary.GetElementsByTagName("Lending_Rate");
                objWACC.LendingRate = Convert.ToDouble(nodeWACCTmp[0].LastChild.InnerText);

                nodeWACCTmp = xmlWACCSummary.GetElementsByTagName("COD");
                objWACC.AFTaxCod = Convert.ToDouble(nodeWACCTmp[0].LastChild.InnerText);

                nodeWACCTmp = xmlWACCSummary.GetElementsByTagName("Other_Premium");
                objWACC.OtherPr = Convert.ToDouble(nodeWACCTmp[0].LastChild.InnerText);

          
                nodeWACCTmp = xmlWACCSummary.GetElementsByTagName("Lending_Rate_Premium");
                objWACC.LendRatePr = 100 * Convert.ToDouble(nodeWACCTmp[0].LastChild.InnerText);

                nodeWACCTmp = xmlWACCSummary.GetElementsByTagName("WACC");
                objWACC.FairValue = Convert.ToDouble(nodeWACCTmp[0].LastChild.InnerText);
            }
            return View(objWACC);
        }
public ActionResult WACCtest(字符串RegionID1,bool HongKong=false,bool China=false,bool marketmultiples=false,bool dcf=false)
{
var objWACC=新的WACC();
XmlDocument xmlTmp=webS.GetWaccOptionsIndustries();
objWACC.Industries=新列表();
XmlDocument nodeCompsTmp=webS._Test_CompsFilter();
objWACC.companys=新列表();
XmlDocument nodeMktRevenueTmp=webS._Test_MktCapRevenue();
objWACC.MrkCapRevenue=新列表();
XmlNodeList nodeListMktCap1=nodeMktRevenueTmp.GetElementsByTagName(“Mkt_Cap”);
XmlNodeList nodelisterevenue=nodeMktRevenueTmp.GetElementsByTagName(“收入”);
对于(int i=0;i<div class="content" style="width:1000px">
            <p><input id="text_tag_input" class="form-control input-sm" type="text"></p>
            <br />      
            <div>
                    <table id="tbl_posts">
                        <tbody id="tbl_posts_body">
                            <tr id="rec-1">

                                @*BW: These is the dummy data for the keywords selection, when the sql is ready to linked to the model. These will be  deleted*@
                                @{
                                    Model.KeywordOptions = new List<SelectListItem>();

                                    Model.KeywordOptions.Add(new SelectListItem
                                    {
                                        Text = "--Select Option--",
                                        Value = "selectoption1",
                                    });

                                    Model.KeywordOptions.Add(new SelectListItem
                                    {
                                        Text = "Market Cap".ToString(),
                                        Value = "TEST 1",
                                    });
                                    Model.KeywordOptions.Add(new SelectListItem
                                    {
                                        Text = "Revenue",
                                        Value = "TEST 2"
                                    });
                                    Model.KeywordOptions.Add(new SelectListItem
                                    {
                                        Text = "Keywords",
                                        Value = "TEST 3"
                                    });
                                }

                                @{
                                    Model.MarketandRevenueOptions = new List<SelectListItem>();

                                    Model.MarketandRevenueOptions.Add(new SelectListItem
                                    {
                                        Text = "--Select Option--",
                                        Value = "",
                                    });

                                    Model.MarketandRevenueOptions.Add(new SelectListItem
                                    {
                                        Text = "Greater Than",
                                        Value = "Test 4",
                                    });
                                    Model.MarketandRevenueOptions.Add(new SelectListItem
                                    {
                                        Text = "Less Than",
                                        Value = "Test 5"
                                    });

                                    Model.MarketandRevenueOptions.Add(new SelectListItem
                                    {
                                        Text = "Equals",
                                        Value = "Test 6"
                                    });

                                    Model.MarketandRevenueOptions.Add(new SelectListItem
                                    {
                                        Text = "Range",
                                        Value = "Test 7"
                                    });
                                }

                                @{
                                    Model.KeywordsList = new List<SelectListItem>();

                                    Model.KeywordsList.Add(new SelectListItem
                                    {
                                        Text = "--Select Option--",
                                        Value = "Test 8",
                                    });

                                    Model.KeywordsList.Add(new SelectListItem
                                    {
                                        Text = "Excluding",
                                        Value = "Test 9",
                                    });
                                    Model.KeywordsList.Add(new SelectListItem
                                    {
                                        Text = "Including",
                                        Value = "Test 10"
                                    });

                                    Model.KeywordsList.Add(new SelectListItem
                                    {
                                        Text = "Exact Phrase",
                                        Value = "Test 11"
                                    });

                                }

                                <td>@Html.DropDownListFor(model => model.KeywordOptionsSelected, Model.KeywordOptions, new { @id = "Dropdown_TEST" })</td>

                                <td class="display" style="display:none; text-align:left; width:18px;">@Html.DropDownListFor(model => model.MarketandRevenueOptionsSelected, Model.MarketandRevenueOptions, new { @id = "platt" })</td>


                                <td class="display_1" style="display:none; text-align:left; width:18px;">@Html.DropDownListFor(model => model.KeywordsListSelected, Model.KeywordsList, new { @id = "platt2" })</td>


                                <td class="display_2" style="display:none; text-align:center;">
                                    <div>
                                        <input type="number" name="keywordtextbox" value="0">
                                    </div>
                                </td>

                                <td class="display_3" style="display:none; text-align:left;">
                                    <div style="text-align:center;">
                                        <input type="text" name="keywordtextbox" placeholder="e.g Toy Manufacturing">
                                    </div>
                                </td>

                                <td><a class="btn btn-xs delete-record" data-id="1"><i class="glyphicon glyphicon-trash"></i></a></td>
                            </tr>
                        </tbody>
                    </table>


                    <div style="display:none;">

                        <table id="sample_table">
                            <tr id="">
                                <td>
                                    <select required id="Dropdown_clone">
                                        <option value="selectoption_clone">--Select Option--</option>
                                        <option class="cont" value="clone 1"> Market Cap</option>
                                        <option class="cont_1" value="clone 2"> Revenue</option>
                                        <option class="cont_2" value="clone 3"> Keywords</option>

                                    </select>
                                </td>
                                <td class="display_clone" style="display:none;">
                                    <select required id="platt_clone">
                                        <option value="">--Select Option--</option>
                                        <option value="clone 4"> Greater Than </option>
                                        <option value="clone 5"> Less Than </option>
                                        <option value="clone 6"> Equals </option>
                                        <option value="clone 7"> Range </option>
                                    </select>
                                </td>
                                <td class="display_1_clone" style="display:none; text-align:left; width:10px">
                                    <select required id="platt2_clone">
                                        <option value="clone 8">--Select Option--</option>
                                        <option value="clone 9">Excluding</option>
                                        <option value="clone 10">Including</option>
                                        <option value="clone 11">Exact Phrase</option>
                                    </select>
                                </td>
                                <td class="display_2_clone" style="display:none;">
                                    <div style="text-align:right;">
                                        <input type="number" name="keywordtextbox" value="0">
                                    </div>
                                </td>
                                <td class="display_3_clone" style="display:none;">
                                    <div style="text-align:center;">
                                        <input type="text" name="keywordtextbox" placeholder="e.g Toy Manufacturing">
                                    </div>
                                </td>
                                <td><a class="btn btn-xs delete-record" data-id="0"><i class="glyphicon glyphicon-trash"></i></a></td>
                            </tr>
                        </table>


                    </div>
                    <div>
                        <a class="btn btn-primary pull-right add-record" data-added="0"><i class="glyphicon glyphicon-plus"></i> Add Row</a>
                    </div>

                <br />
                <br />
                <form>
                    <input type="submit" class="waccbuttonsubmit" value='Apply' />   
                    </form>
            </div>
public string KeywordOptionsSelected { get; set; }
public SelectList KeywordOptions { get; set; }
model.KeywordOptions = new SelectList(new List<SelectListItem> { 
                        new SelectListItem { Value = "TEST 1", Text = "Market Cap" },
                        new SelectListItem { Value = "TEST 2", Text = "Revenue" },
                        }, "Value", "Text");
@Html.DropDownListFor(model => model.KeywordOptionsSelected, Model.KeywordOptions, "--Select Option--", new { @id = "Dropdown_TEST" })
public static List<SelectListItem> GetKeywords()
{
    var keyword = new List<SelectListItem>();
    keyword.Add(new SelectListItem { Value = "TEST 1", Text = "Market Cap" });
    keyword.Add(new SelectListItem { Value = "TEST 2", Text = "Revenue" });
    return keyword;
}
model.KeywordOptions = new SelectList(GetKeywords(), "Value", "Text");