c# - 使用 C# 从 Xamarin Studio 中的 ListView 获取 EditText 控件

标签 c# android xamarin

我正在将 Xamarin Studio 与 C# 结合使用。

我在 listview 适配器中添加了 EditText 控件。并且此列表是动态填充的。

现在我想获取activity类中所有EditText的值。我怎样才能实现这一目标?

`公共(public)类 PRDeptHeadApprovalDetailAdapter :BaseAdapter { 列出项目; Activity 上下文;

    public PRDeptHeadApprovalDetailAdapter(Activity context, List<PRDeptHeadApprovalDetailAdapterInformation> items)
        : base()
    {
        this.context = context;
        this.items = items;
    }

    public override long GetItemId(int position)
    {
        return position;
    }


    public override string this[int position]
    {
        get { return items[position].ToString(); }
    }


    public override int Count
    {
        get { return items.Count; }
    }

    public override View GetView(int position, View convertView, ViewGroup parent)
    {
        var item = items[position];
        View view = convertView; // re-use an existing view, if one is supplied
        if (view == null) // no view to re-use, create new
            view = context.LayoutInflater.Inflate(Resource.Layout.PRDeptHeadApprovalDetailAdapter, null);
        // set view properties to reflect data for the given row
        view.FindViewById<TextView>(Resource.Id.lbltdPermNo).Text = item.lbltdPermNo;
        view.FindViewById<TextView>(Resource.Id.lbltdItemName).Text = item.lbltdItemName;
        view.FindViewById<TextView>(Resource.Id.lbltdJustification).Text = item.lbltdJustification;
        view.FindViewById<TextView>(Resource.Id.lbltdSrce).Text = item.lbltdSrce;
        view.FindViewById<TextView>(Resource.Id.lbltdQuantity).Text = item.lbltdQuantity;
        EditText txtApproveQuantity = view.FindViewById<EditText>(Resource.Id.lbltdApproveQuantity);
        txtApproveQuantity.Text = item.lbltdApproveQuantity;
        // return the view, populated with data, for display
        return view;
    }
}`

最佳答案

首先创建 ListView 适配器的对象

titleAdapter = new TitleAdapter();

然后你就可以通过 ListView 的位置来获取listview EditText值的每个位置

View view = titleAdapter .getView(position, null, null);
EditText edittext= (EditText ) view.findViewById(R.id.edittext_id_here);
edittext.getText();

关于c# - 使用 C# 从 Xamarin Studio 中的 ListView 获取 EditText 控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21252308/

相关文章:

c# - 用于在 Linux 中编程的工具

c# - 如何以编程方式禁用网络摄像头二极管

Android - 如何防止 View 焦点发生变化?

Android Studio NDK 返回 jint

c# - 应用打开时的调用方法

c# - 嵌套循环中的循环优化 c#

android - Xamarin android 找不到 id 字段

ios - MvxBaseTouchViewPresenter : (ChoosePictureFromLibrary dialog does not appear)

c# - 标签不会在旧系统版本上更新 - xamarin

c# - 从 .NET Core 应用程序引用 .NET 4.6.2 类库