Как вставить текст в текстовом поле текущий курсор?

Вопрос, Ваша домашняя страница является просто целевой страницей, или это будет группа страниц? Если это будет просто целевая страница, Вы не ожидаете, что Ваши пользователи будут бродить вокруг там долгое время кроме пойти в другое место. Если это - группа страниц, или подобный существующей группе, можно добавить действие к контроллеру, на который это больше всего похоже.

то, Что я сделал для своего текущего проекта, делают контроллер названным Static, потому что мне нужны 3 статических страницы. Домашняя страница является одним из них, потому что нет ничего, чтобы видеть или сделать кроме движения в другом месте.

Для отображения маршрута по умолчанию используйте следующее в routes.rb:

# Place at the end of the routing!
map.root :controller => 'MyController', :action => :index

В моем случае это было бы:

map.root :controller => 'static', :action => :index

, Если Вы хотите, Вы могли бы создать контроллер только для этой домашней страницы. Я назвал бы его основным, или что-то, что можно помнить, который касается домашней страницы. Оттуда можно получить данные и модели и подчиниться выходному представлению.

class MainController < ApplicationController
  def index
    @posts = Posts.find(:all, :limit => 10, :order => 'date_posted', :include => :user)
  end
end

Принятие Вам определили Ваши отношения модели правильно, шаблон для соответствия ему будет очень прост.

Удача, надейтесь, что это помогает.

38
задан Lernkurve 13 January 2015 в 13:15
поделиться

4 ответа

var insertText = "Text";
var selectionIndex = textBox1.SelectionStart;
textBox1.Text = textBox1.Text.Insert(selectionIndex, insertText);
textBox1.SelectionStart = selectionIndex + insertText.Length;
42
ответ дан 27 November 2019 в 03:12
поделиться
 textBox1.Text = textBox1.Text.Insert(textBox1.SelectionStart, "Whatever");
5
ответ дан 27 November 2019 в 03:12
поделиться

Лучший способ добиться этого - использовать TextBox.Text.Insert (int indexSelectionStart, string text) . Этот метод вставляет текст в TextBox по указанному вами индексу - он использует string string.insert (int startIndex, string value) как TextBox. Текст - это строка, в которую мы собираемся вставить текст в определенной точке. Вы хотите вставить текст , где курсор / селектор - , и чтобы найти этот индекс, мы можем использовать TextBox.SelectionStart .

Допустим, ваше текстовое поле называется textBox1. Вот как может выглядеть код, предполагая, что текст, который вы хотите вставить, хранится в строке с именем strInsert .

string strInsert = "I am inserting this text.";
textBox1.Text = textBox1.Text.Insert(textBox1.SelectionStart, strInsert);
1
ответ дан 27 November 2019 в 03:12
поделиться

Это гарантирует, что курсор находится в какой-то позиции внутри текстового поля, а затем вставляет текст, где бы он ни находился.

        if (textBox1.CaretIndex <= 0)
        {

               textBox1.Focus();
     textBox1.Text = textBox1.Text.Insert(
                textBox1.CaretIndex, "Whatever");
        }
        else
        {
            textBox1.Text = textBox1.Text.Insert(
                textBox1.CaretIndex, "Whatever");
        }
1
ответ дан 27 November 2019 в 03:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: