public void Bind(MeasureUnitItem entry)
        {
            entry.RequireNotNull(nameof(entry));

            this.SetFirstTextView(entry.MeasureUnit.Name());
            this.SetIcon(entry.Enabled ? Resource.Drawable.ic_check : 0);
        }
        public override void OnBindViewHolder(RecyclerView.ViewHolder holder, int position)
        {
            holder.RequireCondition((RecyclerView.ViewHolder vh) => vh is MeasureUnitViewHolder, nameof(holder), "Runtime error");

            if (this.measureUnits.Length <= position)
            {
                return;
            }

            var viewHolder = holder as MeasureUnitViewHolder;

            MeasureUnitItem currentEntry = this.measureUnits[position];

            viewHolder.Bind(currentEntry);
            viewHolder.Click += async(object sender, EventArgs args) => await this.onClickCallback?.Invoke(currentEntry);
        }